From e86db861c40c3ce253291c5fef52e8d2fd857c13 Mon Sep 17 00:00:00 2001 From: eddiedoesGIT Date: Mon, 25 Mar 2024 22:52:54 +0300 Subject: [PATCH 01/28] =?UTF-8?q?=D0=94=D1=80=D0=BE=D0=BD=D1=8B-=D0=B0?= =?UTF-8?q?=D0=BD=D1=82=D0=B0=D0=B3=D0=BE=D0=BD=D0=B8=D1=81=D1=82=D1=8B=20?= =?UTF-8?q?(=D0=9F=D0=9E=D0=9C=D0=9E=D0=93=D0=98=D0=A2=D0=95=20=D0=A3?= =?UTF-8?q?=D0=9C=D0=9E=D0=9B=D0=AF=D0=AE)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 434 ++++++++++++++++++ .../Drones/Drone-Antags/DroneAntagBody.yml | 0 .../Channels/Channels/DroneAntagChannel.yml | 6 + .../ADT/KD/Channels/keys/DroneAntagKey.yml | 15 + .../Prototypes/name_identifier_groups.yml | 14 + .../AntagDrones/drone-miner.rsi/l_hand.png | Bin 0 -> 654 bytes .../AntagDrones/drone-miner.rsi/meta.json | 52 +++ .../AntagDrones/drone-miner.rsi/minedrone.png | Bin 0 -> 1421 bytes .../AntagDrones/drone-miner.rsi/mineshell.png | Bin 0 -> 718 bytes .../AntagDrones/drone-miner.rsi/r_hand.png | Bin 0 -> 5373 bytes 10 files changed, 521 insertions(+) create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml create mode 100644 Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml create mode 100644 Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/l_hand.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/minedrone.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/mineshell.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/r_hand.png diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml new file mode 100644 index 00000000000..680d7392ed5 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -0,0 +1,434 @@ +- type: entity + abstract: true + id: ADTDroneAntagBase + components: + - type: MindContainer + - type: InputMover + - type: MobMover + - type: Clickable + - type: CombatMode + - type: InteractionOutline + - type: DoAfter + - type: Pullable + - type: Examiner + - type: Puller + - type: StandingState + - type: Alerts + - type: Rotatable + - type: RotationVisuals + - type: FloatingVisuals + - type: Reactive + groups: + Acidic: [Touch] + - type: Input + context: "human" + - type: DamageOnHighSpeedImpact + damage: + types: + Blunt: 5 + soundHit: + collection: MetalThud + - type: Damageable + damageContainer: Inorganic + - type: Bloodstream + bloodReagent: Oil + bloodlossDamage: + types: + Bloodloss: + 1 + bloodlossHealDamage: + types: + Bloodloss: + -1 + - type: Fixtures + fixtures: + fix1: + shape: + # Circles, cuz rotation of rectangles looks very bad + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - MobMask + layer: + - MobLayer + - type: MovementSpeedModifier + baseWalkSpeed : 4 + baseSprintSpeed : 3 + - type: EyeProtection + protectionTime: 12 + - type: Sprite + noRot: true + drawdepth: Mobs + - type: Physics + bodyType: KinematicController + - type: Hands + showInHands: false + - type: Body + prototype: Drone + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntag + - Common + - type: ActiveRadio + channels: + - ADTDroneAntag + - Common + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + - CannotSuicide + - DoorBumpOpener + - type: Access + tags: + - External + - type: TypingIndicator + proto: robot + - type: Speech + speechSounds: Pai + # Frontier - languages mechanic + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + +# 1 - МАЙНЕР + +- type: entity + name: drone miner + id: ADTDroneAntagMiner + parent: ADTDroneAntagBase + components: + - type: NameIdentifier + group: ADTDroneAntag + - type: Inventory + templateId: drone + - type: InventorySlots +# БЛА БЛА БЛА отделил сложное + - type: MovementSpeedModifier + baseWalkSpeed : 5 + baseSprintSpeed : 5 + - type: MobState + allowedStates: + - Alive + - Dead + - type: ZombieImmune + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + - type: NoSlip + - type: StatusEffects + allowed: + - SlowedDown + - type: SlowOnDamage + speedModifierThresholds: + 80: 0.5 + - type: Temperature + heatDamageThreshold: 5000 + currentTemperature: 310.15 + specificHeat: 42 + heatDamage: + types: + Heat : 1 #per second, scales with temperature & other constants + - type: Sprite + drawdepth: Mobs + netsync: true + layers: + - state: mineshell + sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi + map: ["base"] + - type: MovementIgnoreGravity + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntag + - Common + - type: ActiveRadio + channels: + - ADTDroneAntag + - Common + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - type: Appearance + - type: GenericVisualizer + visuals: + enum.DroneVisuals.Status: + base: + Off: { state: mineshell } + On: { state: minedrone } +# - type: ReplacementAccent +# accent: silicon + - type: Repairable + fuelcost: 15 + doAfterDelay: 5 + - type: Actions + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + radius: 3.5 + softness: 1 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: StaticPrice + price: 250 + # Frontier - languages mechanic + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + +# 2 - ИНЖЕНЕР + +# - type: entity +# name: drone soldier +# id: ADTDroneAntagEngineer +# parent: ADTDroneAntagBase +# components: +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# # БЛА БЛА БЛА отделил сложное +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: ZombieImmune +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - Stun +# - SlowedDown +# - type: SlowOnDamage +# speedModifierThresholds: +# 80: 0.5 +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# - type: Sprite +# drawdepth: SmallMobs +# layers: +# - state: mineshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - SmallMobMask +# layer: +# - SmallMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: mineshell } +# On: { state: minedrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# radius: 3.5 +# softness: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - RobotTalk +# understands: +# - RobotTalk + +# 3 - ЗАРЯЖАЮЩИЙ + +# - type: entity +# name: drone soldier +# id: ADTDroneAntagCharge +# parent: ADTDroneAntagBase +# components: +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# # БЛА БЛА БЛА отделил сложное +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: ZombieImmune +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - Stun +# - SlowedDown +# - type: SlowOnDamage +# speedModifierThresholds: +# 80: 0.5 +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# - type: Sprite +# drawdepth: SmallMobs +# layers: +# - state: mineshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - SmallMobMask +# layer: +# - SmallMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: mineshell } +# On: { state: minedrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# radius: 3.5 +# softness: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - RobotTalk +# understands: +# - RobotTalk + +# КПБ ДРОН + +# - type: entity +# name: drone soldier +# id: ADTDroneIPCAntag +# parent: ADTDroneAntagBase +# components: +# - type: MobThresholds +# thresholds: +# 0: Alive +# 100: Critical +# 200: Dead + +# - type: nameIdentifierGroup +# id: ADTDroneAntag +# prefix: SD +# fullName: true +# minValue: 10000 +# maxValue: 99999 + +# - type: nameIdentifierGroup +# id: ADTIPCAntag +# prefix: BF +# fullName: true +# minValue: 10000 +# maxValue: 99999 + +# - type: radioChannel +# id: ADTDroneAntag +# name: Дроны +# keycode: 'й' +# frequency: 1301 +# color: "#690e0e" + +# - type: entity +# parent: EncryptionKey +# id: ADTEncryptionKeyDroneAntag +# name: Ключ к каналу дронов +# description: Ключ к доступу каналов дронов. +# components: +# - type: EncryptionKey +# channels: +# - ADTDroneAntag +# - Common +# defaultChannel: ADTDroneAntag +# - type: Sprite +# layers: +# - state: crypt_silver +# - state: rd_label diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml b/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml new file mode 100644 index 00000000000..87701658e8c --- /dev/null +++ b/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml @@ -0,0 +1,6 @@ +- type: radioChannel + id: ADTDroneAntag + name: Дроны + keycode: 'й' + frequency: 1301 + color: "#690e0e" diff --git a/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml b/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml new file mode 100644 index 00000000000..026f9e41f87 --- /dev/null +++ b/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml @@ -0,0 +1,15 @@ +- type: entity + parent: EncryptionKey + id: ADTEncryptionKeyDroneAntag + name: Ключ к каналу дронов + description: Ключ к доступу каналов дронов. + components: + - type: EncryptionKey + channels: + - ADTDroneAntag + - Common + defaultChannel: ADTDroneAntag + - type: Sprite + layers: + - state: crypt_silver + - state: rd_label diff --git a/Resources/Prototypes/name_identifier_groups.yml b/Resources/Prototypes/name_identifier_groups.yml index c1ea005df62..4d1d4cb27a9 100644 --- a/Resources/Prototypes/name_identifier_groups.yml +++ b/Resources/Prototypes/name_identifier_groups.yml @@ -11,6 +11,20 @@ id: Holoparasite prefix: ГОЛО # Corvax-Localization +- type: nameIdentifierGroup + id: ADTDroneAntag + prefix: SD + fullName: true + minValue: 10000 + maxValue: 99999 + +- type: nameIdentifierGroup + id: ADTIPCAntag + prefix: BF + fullName: true + minValue: 10000 + maxValue: 99999 + - type: nameIdentifierGroup id: MMI prefix: ЧМИ # Corvax-Localization diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/l_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..272f4a066465599e2e86fea27c5568ae78b04545 GIT binary patch literal 654 zcmV;90&)F`P)EX>4Tx04R}tkv&MmKpe$iQ>8^J4i*$~$WWauh>AFB6^c+H)C#RSm|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfbaGO3krMxx6k5c1aNLh~_a1le0HIM~n$%wfUwLgV@{G%@Eu?G2=MhT&a?c_{W*Hoyv2ZkNIc67(3QNPu~_V2rGr_?)QG2uW2&Z8zL51; z<-EmNtJGNQp8SQ8yuPx`b(+ISVi8M_AVNV6WmI4zPODCeg*5FaeEdVMUm}-6t}+-o z7Epx-+4Y0}!S8OZ!sLXP6iEQxFOKsu0)%#fX5DeVj~%CZ0tBCdE4}TnHh`H=((7$4 zb_Dco0~gnAP1yr3cYwhsLpEhs3epq`1>pURz9|Rv-vT{rUT>{^oIU^<>MC^u92^3p zMao|Hd3U(8w|~#H`uhRNFmhx3{23Sk000JJOGiWi{{a60|De66lK=n!32;bRa{vGe z!~g&a!~te)g46&200(qQO+^Rh0s|KY2Eyza_W%F@j7da6RCwC$+A#{nAPfM|(i7xv zIYRCa-oQT=9ukhaFViH1dF~IU{I93@bV_dqnK}F8uR800000001!0SO0m-?h4HO%6@9{jD3VHCSX+4hwlfp o);@3g$bEz@Ct!u#008Xf2P{NA<;_V#TL1t607*qoM6N<$g2KWWC;$Ke literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json new file mode 100644 index 00000000000..b2b97759322 --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json @@ -0,0 +1,52 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "made by discord: mnogo_znal", + "states": [ + { + "name": "minedrone", + "directions": 4, + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "mineshell" + }, + { + "name": "l_hand", + "directions": 4 + }, + { + "name": "r_hand", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/minedrone.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/minedrone.png new file mode 100644 index 0000000000000000000000000000000000000000..22e2cfbc8e556a8944a9e3630a153c20a22afdd3 GIT binary patch literal 1421 zcmZ8hdo+}382`q{FvGY_VNgu5*lxm@ieY9<%^>4DQZYqLqMgaOTUpfbk)miTxizM( z79A$awF`2WYnPE)<5q21mzb(z zoLLMH1kbLS3W)4;BbS#DKt*^k>42oia2#2LKp?`O@I~>s-6~WkAQZh z2m65h{|gwauh&LSF`+E)2;^?lnxWc4iUN=~G&(bAo-w{tIl|byJ!;9phM_7xc0=+L z_e}nHitfPfdLvutmUFNd+~aoD@D&4B3&zn8g@TdKmVUsVXCu4A%c|4r&blnQ|?U&>djbz%Dc3*95y2 zN!qM%Ha+eZ!j3}y;B$6m?&kd`sZ(ksN*qqTQ=oq_@A>FtS2k}B{qx{ZC(OlFbLdf& zI2rn?8~O9((jnFK?cp| z6NJD_Fn8zKEzt!~5%I15-3eZ+$TmyEiAs?Ha>&>1bp#7}9i znYpgf3fqYOiDpQ)mVcMlHp?it6RTUd@u}ABh@dVJ&M#u=gNp8otAWOv-;_royoVZg zO%4t{m$oJc)s)!cHzIcAQ=M$hX9Qs3zilWsh|zD*xV(5})#(fESK)xm)49OqTgA;C z9$S>obSQzP80X~x<0_Beg#9oh-ilh_7jn|CD$7Nw6w|RBlgY7QcDE$)b{FS8$;~Xu zP%gfv01i>Ipe~kdQVIve8|HH?tjgk&xhWzj9@nvKv#Y}6L0(^j`&K~_#)8l4ca)70 z1_*BrKCgr&zUuaMWA$GT^ETXPbZP+>d=01Hud@MyxN7noox|n%nN=wPt37~7S#RKA zK|2y|-uNk}I3+aX{9blZU5YmIiM?*;2Y3^6)fsHBgl%0`l|a%}Sa0YQP;46c9z^#% z|F8Iw;F%oMqJ5I%%)LDutc*l z1HWmKu~Pk+8avMor;%3*uzB#H4wAHmtMhw54UTLrAJLJsX;wFZL9h zBDDW8RYDCdZF~@Nh-Ub*Szb;h4n|*-&_9rMGkmO(ggI+O74--?&iz4)b!ugPb|1xr zLDM;jDPJB0Y@!ymBa${}YCjX@>wc%cdWzGTOc7@E$4ixl!MO6}E`St8wYUGmqrcGS z&M!p<`so~M?ZjaCsnX7mzlcdh-!qNW2ztr4bd(Z_m_^oy@Z8gdLRaJ?G}H_HeB|Jv W_;d&P`#V#}hy$GWvKbP(U*bPC_jKm~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/mineshell.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/mineshell.png new file mode 100644 index 0000000000000000000000000000000000000000..aff76bd6f4e3b6081f539e8555a3b669f5335635 GIT binary patch literal 718 zcmV;<0x|uGP)Px%h)G02R9J=Wls!lraTvyb2TeRVH5ES(B#=;QZs}I8xTH`QiGx#dXouodutT9P z7D2FesnDT9q0pu6(9uCDLYF|H9&V*_p+mG$IAU6ilHd`C>!A6YyVG3k$J9K_-T!%? z_u;ws?p|o3i6;JcNM2%W?158zURrwL(_92Wev(&gnrkitO}p{iAsX?MyyApha5ZG? z9#@mDryRprk#s%fda^2K7%S36{4UiN6LNuyw&-d|n3LjO*HezF#u*&E?x)eAKs6;#yv8=?6lacC`!ap)i|+I8j}`crL@aPaB31oi8w)iz5te$MO9bv zqQzdtva*E2GO<#c&9)@4c526_%LF*()FelhH-UbJH$X*Oq~DyxvfPP>+PBGc&l3tyU|Cs;#a&UGnYjstkeuXK{JPx)Jf_{5Po_w`0e$OYE73hoef(9njfT{^j($)Q~a;PLb$0G`e- z0MIHcM5CJMtL}q(@J--6sA^n%`Nh4wq$m+*cJ_&=m&^N7s~UH_+8{JEfypF07*qoM6N<$g2W_S Avj6}9 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/r_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..4a18493138cc9ae617653e61c10d3aefa8174c90 GIT binary patch literal 5373 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 MoZX#DRtN6 Date: Wed, 27 Mar 2024 02:06:47 +0300 Subject: [PATCH 02/28] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D1=81=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B9=D1=82=D0=BE=D0=B2=20=D0=B4=D1=80=D0=BE=D0=BD?= =?UTF-8?q?=D0=BE=D0=B2=20(=D0=B2=D1=81=D1=91=20=D0=B5=D1=89=D1=91=20?= =?UTF-8?q?=D0=BD=D0=B5=20=D1=82=D0=BE,=20=D1=87=D1=82=D0=BE=20=D0=BD?= =?UTF-8?q?=D1=83=D0=B6=D0=BD=D0=BE)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 541 ++++++++++++++---- .../Prototypes/name_identifier_groups.yml | 8 +- .../drone-charger.rsi/chargedrone.png | Bin 0 -> 1539 bytes .../drone-charger.rsi/chargeshell.png | Bin 0 -> 752 bytes .../AntagDrones/drone-charger.rsi/l_hand.png | Bin 0 -> 654 bytes .../AntagDrones/drone-charger.rsi/meta.json | 52 ++ .../AntagDrones/drone-charger.rsi/r_hand.png | Bin 0 -> 5373 bytes .../drone-engineer.rsi/engdrone.png | Bin 0 -> 1461 bytes .../drone-engineer.rsi/engshell.png | Bin 0 -> 738 bytes .../AntagDrones/drone-engineer.rsi/l_hand.png | Bin 0 -> 654 bytes .../AntagDrones/drone-engineer.rsi/meta.json | 52 ++ .../AntagDrones/drone-engineer.rsi/r_hand.png | Bin 0 -> 5373 bytes 12 files changed, 527 insertions(+), 126 deletions(-) create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargedrone.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargeshell.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/l_hand.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/r_hand.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engdrone.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engshell.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/l_hand.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/r_hand.png diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 680d7392ed5..040e06a6eb8 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -1,22 +1,11 @@ - type: entity + save: false abstract: true id: ADTDroneAntagBase components: - type: MindContainer - type: InputMover - type: MobMover - - type: Clickable - - type: CombatMode - - type: InteractionOutline - - type: DoAfter - - type: Pullable - - type: Examiner - - type: Puller - - type: StandingState - - type: Alerts - - type: Rotatable - - type: RotationVisuals - - type: FloatingVisuals - type: Reactive groups: Acidic: [Touch] @@ -28,6 +17,7 @@ Blunt: 5 soundHit: collection: MetalThud + - type: Clickable - type: Damageable damageContainer: Inorganic - type: Bloodstream @@ -40,6 +30,7 @@ types: Bloodloss: -1 + - type: InteractionOutline - type: Fixtures fixtures: fix1: @@ -55,8 +46,6 @@ - type: MovementSpeedModifier baseWalkSpeed : 4 baseSprintSpeed : 3 - - type: EyeProtection - protectionTime: 12 - type: Sprite noRot: true drawdepth: Mobs @@ -75,18 +64,15 @@ channels: - ADTDroneAntag - Common + - type: DoAfter + - type: Pullable + - type: Examiner + - type: Puller + - type: StandingState + - type: Alerts - type: Tag tags: - ShoesRequiredStepTriggerImmune - - CannotSuicide - - DoorBumpOpener - - type: Access - tags: - - External - - type: TypingIndicator - proto: robot - - type: Speech - speechSounds: Pai # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -96,19 +82,27 @@ - BorgTalk - SolCommon -# 1 - МАЙНЕР - - type: entity name: drone miner id: ADTDroneAntagMiner parent: ADTDroneAntagBase components: + - type: Drone - type: NameIdentifier group: ADTDroneAntag - type: Inventory templateId: drone - type: InventorySlots -# БЛА БЛА БЛА отделил сложное + - type: Strippable + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + # - key: enum.SiliconLawsUiKey.Key + # type: SiliconLawBoundUserInterface + # - type: SiliconLawBound + # - type: SiliconLawProvider + # laws: Drone - type: MovementSpeedModifier baseWalkSpeed : 5 baseSprintSpeed : 5 @@ -116,7 +110,6 @@ allowedStates: - Alive - Dead - - type: ZombieImmune - type: MobThresholds thresholds: 0: Alive @@ -124,10 +117,7 @@ - type: NoSlip - type: StatusEffects allowed: - - SlowedDown - - type: SlowOnDamage - speedModifierThresholds: - 80: 0.5 + - Stun - type: Temperature heatDamageThreshold: 5000 currentTemperature: 310.15 @@ -137,7 +127,6 @@ Heat : 1 #per second, scales with temperature & other constants - type: Sprite drawdepth: Mobs - netsync: true layers: - state: mineshell sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi @@ -171,17 +160,273 @@ On: { state: minedrone } # - type: ReplacementAccent # accent: silicon + - type: Actions + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + color: "#d7f705" + radius: 7 + energy: 1 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + - CannotSuicide + - type: StaticPrice + price: 250 + # Frontier - languages mechanic + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + - type: CombatMode + - type: MeleeWeapon + hidden: true + damage: + groups: + Brute: 5 + - type: EyeProtection + protectionTime: 12 + - type: TypingIndicator + proto: robot + - type: Speech + speechSounds: Pai + - type: ZombieImmune + - type: Repairable + fuelcost: 15 + doAfterDelay: 5 + - type: Hands + showInHands: false + - type: Body + prototype: Human + + + +- type: entity + name: drone soldier + id: ADTDroneAntagEngineer + parent: ADTDroneAntagBase + components: + - type: Drone + - type: NameIdentifier + group: ADTDroneAntag + - type: Inventory + templateId: drone + - type: InventorySlots + - type: Strippable + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + # - key: enum.SiliconLawsUiKey.Key + # type: SiliconLawBoundUserInterface + # - type: SiliconLawBound + # - type: SiliconLawProvider + # laws: Drone + - type: MovementSpeedModifier + baseWalkSpeed : 5 + baseSprintSpeed : 5 + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + - type: NoSlip + - type: StatusEffects + allowed: + - Stun + - type: Temperature + heatDamageThreshold: 5000 + currentTemperature: 310.15 + specificHeat: 42 + heatDamage: + types: + Heat : 1 #per second, scales with temperature & other constants + # - type: Sprite + # drawdepth: Mobs + # layers: + # - state: engshell + # sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi + # map: ["base"] + - type: Sprite + drawdepth: Mobs + layers: + - state: engshell + sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi + map: ["base"] + - type: MovementIgnoreGravity + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntag + - Common + - type: ActiveRadio + channels: + - ADTDroneAntag + - Common + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - type: Appearance + - type: GenericVisualizer + visuals: + enum.DroneVisuals.Status: + base: + Off: { state: engshell } + On: { state: engdrone } + # - type: ReplacementAccent + # accent: silicon + - type: Actions + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + color: "#d7f705" + radius: 7 + energy: 1 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + - CannotSuicide + - type: StaticPrice + price: 250 + # Frontier - languages mechanic + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + - type: CombatMode + - type: MeleeWeapon + hidden: true + damage: + groups: + Brute: 5 + - type: EyeProtection + protectionTime: 12 + - type: TypingIndicator + proto: robot + - type: Speech + speechSounds: Pai + - type: ZombieImmune - type: Repairable fuelcost: 15 doAfterDelay: 5 + - type: Hands + showInHands: false + - type: Body + prototype: Human + + + +- type: entity + name: drone sodlier + id: ADTDroneAntagCharge + parent: ADTDroneAntagBase + components: + - type: Drone + - type: NameIdentifier + group: ADTDroneAntag + - type: Inventory + templateId: drone + - type: InventorySlots + - type: Strippable + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + # - key: enum.SiliconLawsUiKey.Key + # type: SiliconLawBoundUserInterface + # - type: SiliconLawBound + # - type: SiliconLawProvider + # laws: Drone + - type: MovementSpeedModifier + baseWalkSpeed : 5 + baseSprintSpeed : 5 + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + - type: NoSlip + - type: StatusEffects + allowed: + - Stun + - type: Temperature + heatDamageThreshold: 5000 + currentTemperature: 310.15 + specificHeat: 42 + heatDamage: + types: + Heat : 1 #per second, scales with temperature & other constants + - type: Sprite + drawdepth: Mobs + layers: + - state: chargeshell + sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi + map: ["base"] + - type: MovementIgnoreGravity + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntag + - Common + - type: ActiveRadio + channels: + - ADTDroneAntag + - Common + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - type: Appearance + - type: GenericVisualizer + visuals: + enum.DroneVisuals.Status: + base: + Off: { state: chargeshell } + On: { state: chargedrone } +# - type: ReplacementAccent +# accent: silicon - type: Actions - type: UnpoweredFlashlight - type: PointLight enabled: false - radius: 3.5 - softness: 1 + color: "#d7f705" + radius: 7 + energy: 1 mask: /Textures/Effects/LightMasks/cone.png autoRot: true + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + - CannotSuicide - type: StaticPrice price: 250 # Frontier - languages mechanic @@ -192,107 +437,136 @@ - GalacticCommon - BorgTalk - SolCommon + - type: CombatMode + - type: MeleeWeapon + hidden: true + damage: + groups: + Brute: 5 + - type: EyeProtection + protectionTime: 12 + - type: TypingIndicator + proto: robot + - type: Speech + speechSounds: Pai + - type: ZombieImmune + - type: Repairable + fuelcost: 15 + doAfterDelay: 5 + - type: Hands + showInHands: false + - type: Body + prototype: Human + + +# OLD DRONE BASE -# 2 - ИНЖЕНЕР # - type: entity -# name: drone soldier -# id: ADTDroneAntagEngineer -# parent: ADTDroneAntagBase +# abstract: true +# id: ADTDroneAntagBase # components: -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# # БЛА БЛА БЛА отделил сложное -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: ZombieImmune -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - Stun -# - SlowedDown -# - type: SlowOnDamage -# speedModifierThresholds: -# 80: 0.5 -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: +# - type: MindContainer +# - type: InputMover +# - type: MobMover +# - type: Clickable +# - type: CombatMode +# - type: InteractionOutline +# - type: DoAfter +# - type: Pullable +# - type: Examiner +# - type: Puller +# - type: StandingState +# - type: Alerts +# - type: Rotatable +# - type: RotationVisuals +# - type: FloatingVisuals +# - type: Reactive +# groups: +# Acidic: [Touch] +# - type: Input +# context: "human" +# - type: DamageOnHighSpeedImpact +# damage: # types: -# Heat : 1 #per second, scales with temperature & other constants -# - type: Sprite -# drawdepth: SmallMobs -# layers: -# - state: mineshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common +# Blunt: 5 +# soundHit: +# collection: MetalThud +# - type: Damageable +# damageContainer: Inorganic +# - type: Bloodstream +# bloodReagent: Oil +# bloodlossDamage: +# types: +# Bloodloss: +# 1 +# bloodlossHealDamage: +# types: +# Bloodloss: +# -1 # - type: Fixtures # fixtures: # fix1: # shape: +# # Circles, cuz rotation of rectangles looks very bad # !type:PhysShapeCircle # radius: 0.35 # density: 50 # mask: -# - SmallMobMask +# - MobMask # layer: -# - SmallMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: mineshell } -# On: { state: minedrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# radius: 3.5 -# softness: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: StaticPrice -# price: 250 +# - MobLayer +# - type: MovementSpeedModifier +# baseWalkSpeed : 4 +# baseSprintSpeed : 3 +# - type: EyeProtection +# protectionTime: 12 +# - type: Sprite +# noRot: true +# drawdepth: Mobs +# - type: Physics +# bodyType: KinematicController +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Drone +# - type: IntrinsicRadioReceiver +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# - CannotSuicide +# - DoorBumpOpener +# - type: Access +# tags: +# - External +# - type: TypingIndicator +# proto: robot +# - type: Speech +# speechSounds: Pai # # Frontier - languages mechanic # - type: LanguageSpeaker # speaks: -# - RobotTalk +# - BorgTalk # understands: -# - RobotTalk +# - GalacticCommon +# - BorgTalk +# - SolCommon + + +# OLD FIRST DRONE -# 3 - ЗАРЯЖАЮЩИЙ # - type: entity -# name: drone soldier -# id: ADTDroneAntagCharge +# name: drone miner +# id: ADTDroneAntagMiner # parent: ADTDroneAntagBase # components: # - type: NameIdentifier @@ -300,7 +574,6 @@ # - type: Inventory # templateId: drone # - type: InventorySlots -# # БЛА БЛА БЛА отделил сложное # - type: MovementSpeedModifier # baseWalkSpeed : 5 # baseSprintSpeed : 5 @@ -316,7 +589,6 @@ # - type: NoSlip # - type: StatusEffects # allowed: -# - Stun # - SlowedDown # - type: SlowOnDamage # speedModifierThresholds: @@ -329,7 +601,8 @@ # types: # Heat : 1 #per second, scales with temperature & other constants # - type: Sprite -# drawdepth: SmallMobs +# drawdepth: Mobs +# netsync: true # layers: # - state: mineshell # sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi @@ -351,9 +624,9 @@ # radius: 0.35 # density: 50 # mask: -# - SmallMobMask +# - FlyingMobMask # layer: -# - SmallMobLayer +# - FlyingMobLayer # - type: Appearance # - type: GenericVisualizer # visuals: @@ -379,11 +652,15 @@ # # Frontier - languages mechanic # - type: LanguageSpeaker # speaks: -# - RobotTalk +# - BorgTalk # understands: -# - RobotTalk +# - GalacticCommon +# - BorgTalk +# - SolCommon + + +# IPC DRONE -# КПБ ДРОН # - type: entity # name: drone soldier @@ -396,6 +673,10 @@ # 100: Critical # 200: Dead + +# DRONE NAME IDENTIFIER + + # - type: nameIdentifierGroup # id: ADTDroneAntag # prefix: SD @@ -403,6 +684,10 @@ # minValue: 10000 # maxValue: 99999 + +# IPC DRONE NAME IDENTIFIER + + # - type: nameIdentifierGroup # id: ADTIPCAntag # prefix: BF @@ -410,6 +695,10 @@ # minValue: 10000 # maxValue: 99999 + +# DRONE RADIO CHANNEL + + # - type: radioChannel # id: ADTDroneAntag # name: Дроны @@ -417,6 +706,10 @@ # frequency: 1301 # color: "#690e0e" + +# DRONE ENCRYPTION KEY + + # - type: entity # parent: EncryptionKey # id: ADTEncryptionKeyDroneAntag @@ -432,3 +725,7 @@ # layers: # - state: crypt_silver # - state: rd_label + + + + diff --git a/Resources/Prototypes/name_identifier_groups.yml b/Resources/Prototypes/name_identifier_groups.yml index 4d1d4cb27a9..07a272ac3d1 100644 --- a/Resources/Prototypes/name_identifier_groups.yml +++ b/Resources/Prototypes/name_identifier_groups.yml @@ -15,15 +15,15 @@ id: ADTDroneAntag prefix: SD fullName: true - minValue: 10000 - maxValue: 99999 + minValue: 100 + maxValue: 999 - type: nameIdentifierGroup id: ADTIPCAntag prefix: BF fullName: true - minValue: 10000 - maxValue: 99999 + minValue: 100 + maxValue: 999 - type: nameIdentifierGroup id: MMI diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargedrone.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargedrone.png new file mode 100644 index 0000000000000000000000000000000000000000..17d6fd78bb5a7d85435a87e219235f61b1763336 GIT binary patch literal 1539 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json new file mode 100644 index 00000000000..86855294b1d --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json @@ -0,0 +1,52 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "made by discord: mnogo_znal", + "states": [ + { + "name": "chargedrone", + "directions": 4, + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "chargeshell" + }, + { + "name": "l_hand", + "directions": 4 + }, + { + "name": "r_hand", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/r_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..4a18493138cc9ae617653e61c10d3aefa8174c90 GIT binary patch literal 5373 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 MoZX#DRtN6C00001b5ch_0Itp) z=>Px#1ZP1_K>z@;j|==^1poj5Gf+%aMNm*}Cnq(FMi@z0v>6#9H#bYPw6rfdbg)?- z5D^!Pi;JyS9shwV3kwg{Y$Rea5dZ)HDM@s^0000HbW%=J|NsC0|NsC0|NsC0|NsC0 z041%NVgLXD32;bRa{vGi!Tz{YLAdmPfv%d#tV8@=DeAivL_Y5oV_}2%Hdj2jP^b->H5W(oZ0sPHj=^gB$4Jc_i z(od+rhY(I53{0AAEd~z@lr$U|OQ@sw1`HYxz^{Tv643cTLcBg0pkF;ul;a7p`g;wG zCdBH!fdzgNic&TxCB*7qWk5^8qr@dp-aRJs+s_c2el= z$Ux`$09_w=K2Yo3By>!@9bAXoTlV;h4O2Gw;M~SqxS}+-fl1p zhk?WZ-blLBA0#dr+9@^LfuA85@a+`*Bu!t+XhLm$G~n7PH8TcA6JqqyfNQ7J1nmut zBG5ir=Ydc`b&=ZNhzSXMh|?!#@i*A9ztX0$fN!y%O^DMMX<>5-{gtaSY)k!g zLY%%Z;NHKwDhGElpOCbNIDNwa^jEH`=_DlVAxo_<4D8DlR_AXhdkOXTkfqj_2Jj_x z)m20W5+Z7SX#jTfgkQojkPuPnYXk82sAFI-p;})VkQhs-)<14wD4|;aumK4np^DcV z=qFV1as!WY7&r_Z1`Y#+MWCtqpCTZ!Vm>zm0Inp|&3O`aQTFq%-NFAc!T z<-7ZY(S#cM?2F)^a!9~6c{GwUnovuh&OCzwxSyb*@{I@K62cbesf1ekbmDr}M%C|K zBQ_z|=+j7!lu%2b&ih)mSycVr)pKt`+#YJ`(|I>Aux+aK-j%pBA$AWn_36A7x;kjA zY?If(CRDz=k4OnM^_fw8?b^AebqN*k?juq{O?_s7Ub|v*)y5};yVwn7NPDQM&kSHw z*D-KsLhK%D>N5jyNnJZl#hnRpd#I^T4M0!V`hWY8!GxOn)BtE<_qd|PU_woOVF0#| zD;kU@)YNBtKwvbXrv5<#LkTtYj~I{;6Ke5d1Kot0ywbo^90opYVBh}&oA+djtdPx%oJmAMR9J=Wlut+$aTLct6P4P6t}CqU!CjckutKL;6oTj)DJ){3SP--q1v>?? z#U9IxrvgLRP9+I>Skw?Ndk_T0?BZeE%R=s9a6=kbEQ8?JL4M=>*`3{t=+J&)4)fmo z{@(Y!-}^miqKPK{cPOgN4|L1ZqYsUTwzp62roD{mg;jqQy{njCxmJsoHzr(NV z8x#s#N+WzbF4jt(ij^GptbXc~hg|>m-YI~d-{RL40Fa86$cM5{8!6T~t9t#)9T)4Y z;zszs0`j3OEAs=+c8x5HmXlQgDwP8aqv&u~DhCbo?YQ7J7)Ft5fh{Mi7)B9IOIX8| z$&8c9j9W39mJs#$Zg_?wHyRaF#j8Xjsz=yx$2Qr|J?xkFc>Crxx~>BdkH@)t?*ZN6 zD5+S9g~MxA`Dt~B1%?jCuzTA{F|m}VLKC)cnccpbi3%fA$>;CyW(AF9N8k=Yd87sMds4L)a!&iW8dn1*cm;28<&_olz04A$P Ur7UXow*UYD07*qoM6N<$f)t!z)c^nh literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/l_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..272f4a066465599e2e86fea27c5568ae78b04545 GIT binary patch literal 654 zcmV;90&)F`P)EX>4Tx04R}tkv&MmKpe$iQ>8^J4i*$~$WWauh>AFB6^c+H)C#RSm|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfbaGO3krMxx6k5c1aNLh~_a1le0HIM~n$%wfUwLgV@{G%@Eu?G2=MhT&a?c_{W*Hoyv2ZkNIc67(3QNPu~_V2rGr_?)QG2uW2&Z8zL51; z<-EmNtJGNQp8SQ8yuPx`b(+ISVi8M_AVNV6WmI4zPODCeg*5FaeEdVMUm}-6t}+-o z7Epx-+4Y0}!S8OZ!sLXP6iEQxFOKsu0)%#fX5DeVj~%CZ0tBCdE4}TnHh`H=((7$4 zb_Dco0~gnAP1yr3cYwhsLpEhs3epq`1>pURz9|Rv-vT{rUT>{^oIU^<>MC^u92^3p zMao|Hd3U(8w|~#H`uhRNFmhx3{23Sk000JJOGiWi{{a60|De66lK=n!32;bRa{vGe z!~g&a!~te)g46&200(qQO+^Rh0s|KY2Eyza_W%F@j7da6RCwC$+A#{nAPfM|(i7xv zIYRCa-oQT=9ukhaFViH1dF~IU{I93@bV_dqnK}F8uR800000001!0SO0m-?h4HO%6@9{jD3VHCSX+4hwlfp o);@3g$bEz@Ct!u#008Xf2P{NA<;_V#TL1t607*qoM6N<$g2KWWC;$Ke literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json new file mode 100644 index 00000000000..270a647d52a --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json @@ -0,0 +1,52 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "made by discord: mnogo_znal", + "states": [ + { + "name": "engdrone", + "directions": 4, + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ], + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "engshell" + }, + { + "name": "l_hand", + "directions": 4 + }, + { + "name": "r_hand", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/r_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..4a18493138cc9ae617653e61c10d3aefa8174c90 GIT binary patch literal 5373 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 MoZX#DRtN6 Date: Sat, 30 Mar 2024 17:20:47 +0300 Subject: [PATCH 03/28] =?UTF-8?q?=D0=A2=D0=A0=D0=95=D0=A2=D0=AC=D0=AF=20?= =?UTF-8?q?=D0=9F=D0=9E=D0=9F=D0=AB=D0=A2=D0=9A=D0=90=20=D0=94=D0=A0=D0=9E?= =?UTF-8?q?=D0=9D=D0=AB-=D0=90=D0=9D=D0=A2=D0=90=D0=93=D0=98=20(=D0=91?= =?UTF-8?q?=D0=95=D0=97=D0=A3=D0=A1=D0=9F=D0=95=D0=A8=D0=9D=D0=9E)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Drones/Drone-Antags/DroneAntagBody.yml | 0 .../Drones/Drone-Antags/DroneAntagTRY2.yml | 331 ++++++++++++++++++ .../ADT/Drones/Drone-Antags/drone_modules.yml | 47 +++ 3 files changed, 378 insertions(+) delete mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagBody.yml deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml new file mode 100644 index 00000000000..d0b436c1503 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml @@ -0,0 +1,331 @@ +- type: entity + parent: BaseMob + id: ADTDroneAntagBase2 + name: BASE 2 DRONE MINER + save: false + abstract: true + components: + - type: MindContainer + - type: InputMover + - type: MobMover + - type: Reactive + groups: + Acidic: [Touch] + - type: Input + context: "human" + - type: DamageOnHighSpeedImpact + damage: + types: + Blunt: 5 + soundHit: + collection: MetalThud + - type: Clickable + - type: Damageable + damageContainer: Silicon + - type: CombatMode + - type: MovementIgnoreGravity + - type: NoSlip + - type: StaticPrice + price: 700 + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - MobMask + layer: + - MobLayer + - type: MovementSpeedModifier + baseWalkSpeed : 4 + baseSprintSpeed : 3 + - type: Sprite + noRot: true + drawdepth: Mobs + - type: Physics + bodyType: KinematicController + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + stateAlertDict: + Alive: BorgHealth + Dead: BorgDead + showOverlays: false + allowRevives: true + - type: HealthExaminable + examinableTypes: + - Blunt + - Slash + - Piercing + - Heat + - Shock + locPrefix: silicon + - type: UserInterface + interfaces: + # - key: enum.SiliconLawsUiKey.Key + # type: SiliconLawBoundUserInterface + # - key: enum.BorgUiKey.Key + # type: BorgBoundUserInterface + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + # - type: ActivatableUI + # key: enum.BorgUiKey.Key + # - type: SiliconLawBound + # - type: EmagSiliconLaw + # stunTime: 5 + # - type: SiliconLawProvider + # laws: Crewsimov + - type: Strippable + - type: InventorySlots + - type: Inventory + templateId: Human + - type: Hands + showInHands: false + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntag + - Common + - type: ActiveRadio + channels: + - ADTDroneAntag + - Common + - type: ZombieImmune + - type: Repairable + fuelcost: 15 + doAfterDelay: 3 + allowSelfRepair: true + - type: NameIdentifier + group: ADTDroneAntag + # - type: PowerCellSlot + # cellSlotId: cell_slot + # fitsInCharger: true + # - type: PowerCellDraw + # drawRate: 0.6 + # - type: ItemSlots + # slots: + # cell_slot: + # name: power-cell-slot-component-slot-name-default + - type: Body + - type: ContainerContainer + containers: + borg_module: !type:Container + - type: BorgChassis + - type: StatusEffects + allowed: + - Stun + - type: TypingIndicator + proto: robot + - type: Speech + speechVerb: Robotic + speechSounds: Pai + - type: UnblockableSpeech + - type: Construction + graph: cyborg + containers: + - borg_module + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + # - !type:EmptyContainersBehaviour + # containers: + # - borg_brain + # - borg_module + # - cell_slot + # - !type:DoActsBehavior + # acts: [ "Destruction" ] + # - type: HandheldLight + # toggleOnInteract: false + # wattage: 0.2 + # blinkingBehaviourId: blinking + # radiatingBehaviourId: radiating + # - type: LightBehaviour + # behaviours: + # - !type:FadeBehaviour + # id: radiating + # maxDuration: 2.0 + # startValue: 3.0 + # endValue: 2.0 + # isLooped: true + # reverseWhenFinished: true + # - !type:PulseBehaviour + # id: blinking + # interpolate: Nearest + # maxDuration: 1.0 + # minValue: 0.1 + # maxValue: 2.0 + # isLooped: true + - type: ToggleableLightVisuals + - type: PointLight + enabled: false + color: "#d7f705" + radius: 7 + energy: 1 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: DoAfter + - type: Pullable + - type: Examiner + - type: Alerts + - type: Puller + needsHands: false + - type: StandingState + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + # - DoorBumpOpener + - CanPilot + - CannotSuicide + # - type: Emoting + # - type: GuideHelp + # guides: + # - Cyborgs + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + +- type: entity + id: ADTDroneAntagMiner2 + parent: ADTDroneAntagBase2 + name: DRONE MINER 2 + components: + - type: Body + prototype: Human + - type: Hands + showInHands: false + - type: InventorySlots + - type: Strippable + - type: ContainerContainer + containers: + borg_module: !type:Container + - type: ContainerFill + containers: + borg_module: + - ADTDroneModuleMiner + - type: BorgChassis + maxModules: 1 + moduleWhitelist: + tags: + - BorgModuleGeneric + - BorgModuleSyndicate + - BorgModuleSyndicateAssault + - type: NameIdentifier + group: ADTDroneAntag + - type: MovementSpeedModifier + baseWalkSpeed : 5 + baseSprintSpeed : 5 + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + - type: NoSlip + - type: StatusEffects + allowed: + - Stun + - type: Temperature + heatDamageThreshold: 5000 + currentTemperature: 310.15 + specificHeat: 42 + heatDamage: + types: + Heat : 1 #per second, scales with temperature & other constants + - type: Sprite + drawdepth: Mobs + layers: + - state: minedrone + sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi + map: ["base"] + - type: MovementIgnoreGravity + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 50 + mask: + - FlyingMobMask + layer: + - FlyingMobLayer + - type: Appearance + # - type: GenericVisualizer + # visuals: + # enum.DroneVisuals.Status: + # base: + # Off: { state: mineshell } + # On: { state: minedrone } + - type: Actions + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + color: "#d7f705" + radius: 7 + energy: 1 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: Tag + tags: + - ShoesRequiredStepTriggerImmune + - CannotSuicide + - type: StaticPrice + price: 750 + # Frontier - languages mechanic + - type: LanguageSpeaker + speaks: + - BorgTalk + understands: + - GalacticCommon + - BorgTalk + - SolCommon + - type: CombatMode + - type: MeleeWeapon + hidden: true + damage: + groups: + Brute: 5 + - type: EyeProtection + protectionTime: 12 + - type: TypingIndicator + proto: robot + - type: Speech + speechSounds: Pai + - type: ZombieImmune + - type: Repairable + fuelcost: 15 + doAfterDelay: 5 + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + - type: Inventory + templateId: borgShort diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml new file mode 100644 index 00000000000..85993d4d654 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml @@ -0,0 +1,47 @@ +- type: entity + id: ADTDroneModuleMiner + parent: [ BaseBorgModule, BaseProviderBorgModule ] + name: miner drone tools module + components: + - type: Sprite + layers: + - state: engineering + - state: icon-tools-adv + - type: ItemBorgModule + items: + - MiningDrill + - WeaponProtoKineticAccelerator + - JawsOfLife + - PowerDrill + - OreBag + +- type: entity + id: ADTDroneModuleEngineer + parent: [ BaseBorgModule, BaseProviderBorgModule ] + name: engineer drone tools module + components: + - type: Sprite + layers: + - state: engineering + - state: icon-tools-adv + - type: ItemBorgModule + items: + - WelderIndustrial + - JawsOfLife + - PowerDrill + - Multitool + - trayScanner + - OreBag + +- type: entity + id: ADTDroneModuleCharger + parent: [ BaseBorgModule, BaseProviderBorgModule ] + name: charger drone tools module + components: + - type: Sprite + layers: + - state: engineering + - state: icon-tools-adv + - type: ItemBorgModule + items: + - JawsOfLife From 04d66045af3c7ae79a9da1a7b0350329aef20cfb Mon Sep 17 00:00:00 2001 From: eddiedoesGIT Date: Thu, 4 Apr 2024 02:31:50 +0300 Subject: [PATCH 04/28] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BE?= =?UTF-8?q?=D0=BA,=20=D1=83=D1=81=D0=BF=D0=B5=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 727 +++++++++-------- .../Drones/Drone-Antags/DroneAntagTRY2.yml | 331 -------- .../Drones/Drone-Antags/DroneAntag_Body.yml | 86 ++ .../Drones/Drone-Antags/DroneAntag_Core.yml | 74 ++ .../Drones/Drone-Antags/DroneAntag_IPC.yml | 646 +++++++++++++++ .../DroneAntag_InventoryTemplate.yml | 19 + .../Drone-Antags/DroneAntag_Spawner.yml | 44 + .../Drone-Antags/DroneAntag_StartingGear.yml | 106 +++ .../Drones/Drone-Antags/DroneAntag_Turret.yml | 21 + .../Drones/Drone-Antags/OLD_DroneAntag.yml | 761 ++++++++++++++++++ .../ADT/Drones/Drone-Antags/drone_modules.yml | 47 -- .../Channels/Channels/DroneAntagChannel.yml | 3 +- .../ADT/KD/Channels/keys/DroneAntagKey.yml | 4 +- .../Prototypes/name_identifier_groups.yml | 11 +- .../drone-core-advanced.png | Bin 0 -> 657 bytes .../drone-core-advanced.rsi/meta.json | 14 + .../drone-core-basic.rsi/drone-core-basic.png | Bin 0 -> 665 bytes .../drone-core-basic.rsi/meta.json | 14 + .../drone-core-command.png | Bin 0 -> 629 bytes .../drone-core-command.rsi/meta.json | 14 + .../drone-core-elite.rsi/drone-core-elite.png | Bin 0 -> 652 bytes .../drone-core-elite.rsi/meta.json | 14 + .../drone-ipc-soldier.rsi/ipc_full.png | Bin 0 -> 1561 bytes .../drone-ipc-soldier.rsi/ipc_icon.png | Bin 0 -> 739 bytes .../drone-ipc-soldier.rsi/meta.json | 18 + 25 files changed, 2204 insertions(+), 750 deletions(-) delete mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml create mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml delete mode 100644 Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/drone-core-basic.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/drone-core-command.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/drone-core-elite.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/meta.json create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png create mode 100644 Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/meta.json diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 040e06a6eb8..2a1060a0241 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -1,7 +1,8 @@ - type: entity - save: false - abstract: true + parent: BaseMob id: ADTDroneAntagBase + name: antag drone base + abstract: true components: - type: MindContainer - type: InputMover @@ -19,23 +20,16 @@ collection: MetalThud - type: Clickable - type: Damageable - damageContainer: Inorganic - - type: Bloodstream - bloodReagent: Oil - bloodlossDamage: - types: - Bloodloss: - 1 - bloodlossHealDamage: - types: - Bloodloss: - -1 - - type: InteractionOutline + damageContainer: Silicon + - type: CombatMode + - type: MovementIgnoreGravity + - type: NoSlip + - type: StaticPrice + price: 700 - type: Fixtures fixtures: fix1: shape: - # Circles, cuz rotation of rectangles looks very bad !type:PhysShapeCircle radius: 0.35 density: 50 @@ -51,29 +45,150 @@ drawdepth: Mobs - type: Physics bodyType: KinematicController + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 125: Dead + stateAlertDict: + Alive: BorgHealth + Dead: BorgDead + showOverlays: false + allowRevives: true + - type: HealthExaminable + examinableTypes: + - Blunt + - Slash + - Piercing + - Heat + - Shock + locPrefix: silicon + - type: UserInterface + interfaces: + # - key: enum.SiliconLawsUiKey.Key + # type: SiliconLawBoundUserInterface + # - key: enum.BorgUiKey.Key + # type: BorgBoundUserInterface + # - key: enum.StrippingUiKey.Key + # type: StrippableBoundUserInterface + # - type: ActivatableUI + # key: enum.BorgUiKey.Key + # - type: SiliconLawBound + # - type: EmagSiliconLaw + # stunTime: 5 + # - type: SiliconLawProvider + # laws: Crewsimov + - type: InventorySlots + - type: Inventory + templateId: droneantaginventory - type: Hands showInHands: false - - type: Body - prototype: Drone - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter channels: - - ADTDroneAntag + - ADTDroneAntagChannel - Common - type: ActiveRadio channels: - - ADTDroneAntag + - ADTDroneAntagChannel - Common + - type: ZombieImmune + - type: Repairable + fuelcost: 15 + doAfterDelay: 3 + allowSelfRepair: true + # - type: PowerCellSlot + # cellSlotId: cell_slot + # fitsInCharger: true + # - type: PowerCellDraw + # drawRate: 0.6 + # - type: ItemSlots + # slots: + # cell_slot: + # name: power-cell-slot-component-slot-name-default + - type: StatusEffects + allowed: + - Stun + - type: TypingIndicator + proto: robot + - type: Speech + speechVerb: Robotic + speechSounds: Pai + - type: UnblockableSpeech + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + # - !type:EmptyContainersBehaviour + # containers: + # - borg_brain + # - borg_module + # - cell_slot + # - !type:DoActsBehavior + # acts: [ "Destruction" ] + # - type: HandheldLight + # toggleOnInteract: false + # wattage: 0.2 + # blinkingBehaviourId: blinking + # radiatingBehaviourId: radiating + # - type: LightBehaviour + # behaviours: + # - !type:FadeBehaviour + # id: radiating + # maxDuration: 2.0 + # startValue: 3.0 + # endValue: 2.0 + # isLooped: true + # reverseWhenFinished: true + # - !type:PulseBehaviour + # id: blinking + # interpolate: Nearest + # maxDuration: 1.0 + # minValue: 0.1 + # maxValue: 2.0 + # isLooped: true + - type: ToggleableLightVisuals + - type: PointLight + enabled: false + color: "#d7f705" + radius: 7 + energy: 1,5 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true - type: DoAfter - type: Pullable - type: Examiner + - type: Alerts - type: Puller + needsHands: false - type: StandingState - - type: Alerts - type: Tag tags: - - ShoesRequiredStepTriggerImmune - # Frontier - languages mechanic + - ShoesRequiredStepTriggerImmune + # - DoorBumpOpener + - CanPilot + - CannotSuicide + # - type: Emoting + # - type: GuideHelp + # guides: + # - Cyborgs - type: LanguageSpeaker speaks: - BorgTalk @@ -83,26 +198,21 @@ - SolCommon - type: entity - name: drone miner id: ADTDroneAntagMiner parent: ADTDroneAntagBase + name: drone miner + suffix: Miner + description: Вам, вероятно, не стоит стоять рядом с ним, чтобы проверить, включен ли он. components: - - type: Drone - - type: NameIdentifier - group: ADTDroneAntag - - type: Inventory - templateId: drone + - type: Body + prototype: ADTDroneAntagBodyMiner + - type: Hands + showInHands: false + - type: Loadout + prototypes: [ ADTAntagDroneGearMiner ] - type: InventorySlots - - type: Strippable - - type: UserInterface - interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface - # - key: enum.SiliconLawsUiKey.Key - # type: SiliconLawBoundUserInterface - # - type: SiliconLawBound - # - type: SiliconLawProvider - # laws: Drone + - type: NameIdentifier + group: ADTDroneAntagMiner - type: MovementSpeedModifier baseWalkSpeed : 5 baseSprintSpeed : 5 @@ -118,6 +228,19 @@ - type: StatusEffects allowed: - Stun + - type: EncryptionKeyHolder + keySlots: 2 + examineWhileLocked: false + keysExtractionMethod: Cutting + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntagChannel + - Common + - type: ActiveRadio + channels: + - ADTDroneAntagChannel + - Common - type: Temperature heatDamageThreshold: 5000 currentTemperature: 310.15 @@ -128,18 +251,10 @@ - type: Sprite drawdepth: Mobs layers: - - state: mineshell + - state: minedrone sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi map: ["base"] - type: MovementIgnoreGravity - - type: IntrinsicRadioTransmitter - channels: - - ADTDroneAntag - - Common - - type: ActiveRadio - channels: - - ADTDroneAntag - - Common - type: Fixtures fixtures: fix1: @@ -151,22 +266,48 @@ - FlyingMobMask layer: - FlyingMobLayer + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + - !type:SpawnEntitiesBehavior + spawn: + ADTDroneAntagCoreBasic: + min: 1 + max: 1 + SheetSteel1: + min: 5 + max: 5 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Appearance - - type: GenericVisualizer - visuals: - enum.DroneVisuals.Status: - base: - Off: { state: mineshell } - On: { state: minedrone } -# - type: ReplacementAccent -# accent: silicon + # - type: GenericVisualizer + # visuals: + # enum.DroneVisuals.Status: + # base: + # Off: { state: mineshell } + # On: { state: minedrone } - type: Actions - type: UnpoweredFlashlight - type: PointLight enabled: false color: "#d7f705" radius: 7 - energy: 1 + energy: 1,5 mask: /Textures/Effects/LightMasks/cone.png autoRot: true - type: Tag @@ -174,7 +315,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 250 + price: 750 # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -183,6 +324,9 @@ - GalacticCommon - BorgTalk - SolCommon + - type: NpcFactionMember + factions: + - DroneAntag - type: CombatMode - type: MeleeWeapon hidden: true @@ -199,34 +343,29 @@ - type: Repairable fuelcost: 15 doAfterDelay: 5 - - type: Hands - showInHands: false - - type: Body - prototype: Human - - + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + - type: Inventory + templateId: droneantaginventory - type: entity - name: drone soldier id: ADTDroneAntagEngineer parent: ADTDroneAntagBase + name: drone soldier + description: Вам, вероятно, не стоит стоять рядом с ним, чтобы проверить, включен ли он. + suffix: Engineer components: - - type: Drone - - type: NameIdentifier - group: ADTDroneAntag - - type: Inventory - templateId: drone + - type: Body + prototype: ADTDroneAntagBodyEngineer + - type: Hands + showInHands: false + - type: Loadout + prototypes: [ ADTAntagDroneGearEngineer ] - type: InventorySlots - - type: Strippable - - type: UserInterface - interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface - # - key: enum.SiliconLawsUiKey.Key - # type: SiliconLawBoundUserInterface - # - type: SiliconLawBound - # - type: SiliconLawProvider - # laws: Drone + - type: NameIdentifier + group: ADTDroneAntagSoldier - type: MovementSpeedModifier baseWalkSpeed : 5 baseSprintSpeed : 5 @@ -242,6 +381,19 @@ - type: StatusEffects allowed: - Stun + - type: EncryptionKeyHolder + keySlots: 2 + examineWhileLocked: false + keysExtractionMethod: Cutting + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntagChannel + - Common + - type: ActiveRadio + channels: + - ADTDroneAntagChannel + - Common - type: Temperature heatDamageThreshold: 5000 currentTemperature: 310.15 @@ -249,27 +401,13 @@ heatDamage: types: Heat : 1 #per second, scales with temperature & other constants - # - type: Sprite - # drawdepth: Mobs - # layers: - # - state: engshell - # sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi - # map: ["base"] - type: Sprite drawdepth: Mobs layers: - - state: engshell + - state: engdrone sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi map: ["base"] - type: MovementIgnoreGravity - - type: IntrinsicRadioTransmitter - channels: - - ADTDroneAntag - - Common - - type: ActiveRadio - channels: - - ADTDroneAntag - - Common - type: Fixtures fixtures: fix1: @@ -281,22 +419,48 @@ - FlyingMobMask layer: - FlyingMobLayer + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + - !type:SpawnEntitiesBehavior + spawn: + ADTDroneAntagCoreBasic: + min: 1 + max: 1 + SheetSteel1: + min: 5 + max: 5 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Appearance - - type: GenericVisualizer - visuals: - enum.DroneVisuals.Status: - base: - Off: { state: engshell } - On: { state: engdrone } - # - type: ReplacementAccent - # accent: silicon + # - type: GenericVisualizer + # visuals: + # enum.DroneVisuals.Status: + # base: + # Off: { state: mineshell } + # On: { state: minedrone } - type: Actions - type: UnpoweredFlashlight - type: PointLight enabled: false color: "#d7f705" radius: 7 - energy: 1 + energy: 1,5 mask: /Textures/Effects/LightMasks/cone.png autoRot: true - type: Tag @@ -304,7 +468,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 250 + price: 750 # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -313,6 +477,9 @@ - GalacticCommon - BorgTalk - SolCommon + - type: NpcFactionMember + factions: + - DroneAntag - type: CombatMode - type: MeleeWeapon hidden: true @@ -329,34 +496,30 @@ - type: Repairable fuelcost: 15 doAfterDelay: 5 - - type: Hands - showInHands: false - - type: Body - prototype: Human - + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + - type: Inventory + templateId: droneantaginventory - type: entity - name: drone sodlier - id: ADTDroneAntagCharge + id: ADTDroneAntagCharger parent: ADTDroneAntagBase + name: drone soldier + description: Вам, вероятно, не стоит стоять рядом с ним, чтобы проверить, включен ли он. + suffix: Charger components: - - type: Drone - - type: NameIdentifier - group: ADTDroneAntag - - type: Inventory - templateId: drone + - type: Body + prototype: ADTDroneAntagBodyCharger + - type: Hands + showInHands: false + - type: Loadout + prototypes: [ ADTAntagDroneGearCharger ] - type: InventorySlots - - type: Strippable - - type: UserInterface - interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface - # - key: enum.SiliconLawsUiKey.Key - # type: SiliconLawBoundUserInterface - # - type: SiliconLawBound - # - type: SiliconLawProvider - # laws: Drone + - type: NameIdentifier + group: ADTDroneAntagSoldier - type: MovementSpeedModifier baseWalkSpeed : 5 baseSprintSpeed : 5 @@ -372,6 +535,19 @@ - type: StatusEffects allowed: - Stun + - type: EncryptionKeyHolder + keySlots: 2 + examineWhileLocked: false + keysExtractionMethod: Cutting + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntagChannel + - Common + - type: ActiveRadio + channels: + - ADTDroneAntagChannel + - Common - type: Temperature heatDamageThreshold: 5000 currentTemperature: 310.15 @@ -382,18 +558,10 @@ - type: Sprite drawdepth: Mobs layers: - - state: chargeshell + - state: chargedrone sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi map: ["base"] - type: MovementIgnoreGravity - - type: IntrinsicRadioTransmitter - channels: - - ADTDroneAntag - - Common - - type: ActiveRadio - channels: - - ADTDroneAntag - - Common - type: Fixtures fixtures: fix1: @@ -405,22 +573,48 @@ - FlyingMobMask layer: - FlyingMobLayer + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + - !type:SpawnEntitiesBehavior + spawn: + ADTDroneAntagCoreBasic: + min: 1 + max: 1 + SheetSteel1: + min: 5 + max: 5 + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: Appearance - - type: GenericVisualizer - visuals: - enum.DroneVisuals.Status: - base: - Off: { state: chargeshell } - On: { state: chargedrone } -# - type: ReplacementAccent -# accent: silicon + # - type: GenericVisualizer + # visuals: + # enum.DroneVisuals.Status: + # base: + # Off: { state: mineshell } + # On: { state: minedrone } - type: Actions - type: UnpoweredFlashlight - type: PointLight enabled: false color: "#d7f705" radius: 7 - energy: 1 + energy: 1,5 mask: /Textures/Effects/LightMasks/cone.png autoRot: true - type: Tag @@ -428,7 +622,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 250 + price: 750 # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -437,6 +631,9 @@ - GalacticCommon - BorgTalk - SolCommon + - type: NpcFactionMember + factions: + - DroneAntag - type: CombatMode - type: MeleeWeapon hidden: true @@ -453,236 +650,36 @@ - type: Repairable fuelcost: 15 doAfterDelay: 5 - - type: Hands - showInHands: false - - type: Body - prototype: Human + - type: UserInterface + interfaces: + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + - type: Inventory + templateId: droneantaginventory -# OLD DRONE BASE -# - type: entity -# abstract: true -# id: ADTDroneAntagBase -# components: -# - type: MindContainer -# - type: InputMover -# - type: MobMover -# - type: Clickable -# - type: CombatMode -# - type: InteractionOutline -# - type: DoAfter -# - type: Pullable -# - type: Examiner -# - type: Puller -# - type: StandingState -# - type: Alerts -# - type: Rotatable -# - type: RotationVisuals -# - type: FloatingVisuals -# - type: Reactive -# groups: -# Acidic: [Touch] -# - type: Input -# context: "human" -# - type: DamageOnHighSpeedImpact -# damage: -# types: -# Blunt: 5 -# soundHit: -# collection: MetalThud -# - type: Damageable -# damageContainer: Inorganic -# - type: Bloodstream -# bloodReagent: Oil -# bloodlossDamage: -# types: -# Bloodloss: -# 1 -# bloodlossHealDamage: -# types: -# Bloodloss: -# -1 -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# # Circles, cuz rotation of rectangles looks very bad -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - MobMask -# layer: -# - MobLayer -# - type: MovementSpeedModifier -# baseWalkSpeed : 4 -# baseSprintSpeed : 3 -# - type: EyeProtection -# protectionTime: 12 -# - type: Sprite -# noRot: true -# drawdepth: Mobs -# - type: Physics -# bodyType: KinematicController -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Drone -# - type: IntrinsicRadioReceiver -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# - CannotSuicide -# - DoorBumpOpener -# - type: Access -# tags: -# - External -# - type: TypingIndicator -# proto: robot -# - type: Speech -# speechSounds: Pai -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon -# OLD FIRST DRONE - - -# - type: entity -# name: drone miner -# id: ADTDroneAntagMiner -# parent: ADTDroneAntagBase -# components: -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: ZombieImmune -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - SlowedDown -# - type: SlowOnDamage -# speedModifierThresholds: -# 80: 0.5 -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: -# types: -# Heat : 1 #per second, scales with temperature & other constants -# - type: Sprite -# drawdepth: Mobs -# netsync: true -# layers: -# - state: mineshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - FlyingMobMask -# layer: -# - FlyingMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: mineshell } -# On: { state: minedrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# radius: 3.5 -# softness: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: StaticPrice -# price: 250 -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon - - -# IPC DRONE - - -# - type: entity -# name: drone soldier -# id: ADTDroneIPCAntag -# parent: ADTDroneAntagBase -# components: -# - type: MobThresholds -# thresholds: -# 0: Alive -# 100: Critical -# 200: Dead # DRONE NAME IDENTIFIER # - type: nameIdentifierGroup -# id: ADTDroneAntag -# prefix: SD +# id: ADTDroneAntagMiner +# prefix: drone miner SD # fullName: true -# minValue: 10000 -# maxValue: 99999 +# minValue: 100 +# maxValue: 999 + +# - type: nameIdentifierGroup +# id: ADTDroneAntagSoldier +# prefix: drone soldier SD +# fullName: true +# minValue: 100 +# maxValue: 999 # IPC DRONE NAME IDENTIFIER @@ -700,7 +697,7 @@ # - type: radioChannel -# id: ADTDroneAntag +# id: ADTDroneAntagChannel # name: Дроны # keycode: 'й' # frequency: 1301 @@ -725,7 +722,3 @@ # layers: # - state: crypt_silver # - state: rd_label - - - - diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml deleted file mode 100644 index d0b436c1503..00000000000 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntagTRY2.yml +++ /dev/null @@ -1,331 +0,0 @@ -- type: entity - parent: BaseMob - id: ADTDroneAntagBase2 - name: BASE 2 DRONE MINER - save: false - abstract: true - components: - - type: MindContainer - - type: InputMover - - type: MobMover - - type: Reactive - groups: - Acidic: [Touch] - - type: Input - context: "human" - - type: DamageOnHighSpeedImpact - damage: - types: - Blunt: 5 - soundHit: - collection: MetalThud - - type: Clickable - - type: Damageable - damageContainer: Silicon - - type: CombatMode - - type: MovementIgnoreGravity - - type: NoSlip - - type: StaticPrice - price: 700 - - type: Fixtures - fixtures: - fix1: - shape: - !type:PhysShapeCircle - radius: 0.35 - density: 50 - mask: - - MobMask - layer: - - MobLayer - - type: MovementSpeedModifier - baseWalkSpeed : 4 - baseSprintSpeed : 3 - - type: Sprite - noRot: true - drawdepth: Mobs - - type: Physics - bodyType: KinematicController - - type: MobState - allowedStates: - - Alive - - Dead - - type: MobThresholds - thresholds: - 0: Alive - 125: Dead - stateAlertDict: - Alive: BorgHealth - Dead: BorgDead - showOverlays: false - allowRevives: true - - type: HealthExaminable - examinableTypes: - - Blunt - - Slash - - Piercing - - Heat - - Shock - locPrefix: silicon - - type: UserInterface - interfaces: - # - key: enum.SiliconLawsUiKey.Key - # type: SiliconLawBoundUserInterface - # - key: enum.BorgUiKey.Key - # type: BorgBoundUserInterface - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface - # - type: ActivatableUI - # key: enum.BorgUiKey.Key - # - type: SiliconLawBound - # - type: EmagSiliconLaw - # stunTime: 5 - # - type: SiliconLawProvider - # laws: Crewsimov - - type: Strippable - - type: InventorySlots - - type: Inventory - templateId: Human - - type: Hands - showInHands: false - - type: IntrinsicRadioReceiver - - type: IntrinsicRadioTransmitter - channels: - - ADTDroneAntag - - Common - - type: ActiveRadio - channels: - - ADTDroneAntag - - Common - - type: ZombieImmune - - type: Repairable - fuelcost: 15 - doAfterDelay: 3 - allowSelfRepair: true - - type: NameIdentifier - group: ADTDroneAntag - # - type: PowerCellSlot - # cellSlotId: cell_slot - # fitsInCharger: true - # - type: PowerCellDraw - # drawRate: 0.6 - # - type: ItemSlots - # slots: - # cell_slot: - # name: power-cell-slot-component-slot-name-default - - type: Body - - type: ContainerContainer - containers: - borg_module: !type:Container - - type: BorgChassis - - type: StatusEffects - allowed: - - Stun - - type: TypingIndicator - proto: robot - - type: Speech - speechVerb: Robotic - speechSounds: Pai - - type: UnblockableSpeech - - type: Construction - graph: cyborg - containers: - - borg_module - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 75 - behaviors: - - !type:PlaySoundBehavior - sound: - path: /Audio/Machines/warning_buzzer.ogg - params: - volume: 5 - - trigger: - !type:DamageTrigger - damage: 300 - behaviors: - - !type:PlaySoundBehavior - sound: - collection: MetalBreak - # - !type:EmptyContainersBehaviour - # containers: - # - borg_brain - # - borg_module - # - cell_slot - # - !type:DoActsBehavior - # acts: [ "Destruction" ] - # - type: HandheldLight - # toggleOnInteract: false - # wattage: 0.2 - # blinkingBehaviourId: blinking - # radiatingBehaviourId: radiating - # - type: LightBehaviour - # behaviours: - # - !type:FadeBehaviour - # id: radiating - # maxDuration: 2.0 - # startValue: 3.0 - # endValue: 2.0 - # isLooped: true - # reverseWhenFinished: true - # - !type:PulseBehaviour - # id: blinking - # interpolate: Nearest - # maxDuration: 1.0 - # minValue: 0.1 - # maxValue: 2.0 - # isLooped: true - - type: ToggleableLightVisuals - - type: PointLight - enabled: false - color: "#d7f705" - radius: 7 - energy: 1 - mask: /Textures/Effects/LightMasks/cone.png - autoRot: true - - type: DoAfter - - type: Pullable - - type: Examiner - - type: Alerts - - type: Puller - needsHands: false - - type: StandingState - - type: Tag - tags: - - ShoesRequiredStepTriggerImmune - # - DoorBumpOpener - - CanPilot - - CannotSuicide - # - type: Emoting - # - type: GuideHelp - # guides: - # - Cyborgs - - type: LanguageSpeaker - speaks: - - BorgTalk - understands: - - GalacticCommon - - BorgTalk - - SolCommon - -- type: entity - id: ADTDroneAntagMiner2 - parent: ADTDroneAntagBase2 - name: DRONE MINER 2 - components: - - type: Body - prototype: Human - - type: Hands - showInHands: false - - type: InventorySlots - - type: Strippable - - type: ContainerContainer - containers: - borg_module: !type:Container - - type: ContainerFill - containers: - borg_module: - - ADTDroneModuleMiner - - type: BorgChassis - maxModules: 1 - moduleWhitelist: - tags: - - BorgModuleGeneric - - BorgModuleSyndicate - - BorgModuleSyndicateAssault - - type: NameIdentifier - group: ADTDroneAntag - - type: MovementSpeedModifier - baseWalkSpeed : 5 - baseSprintSpeed : 5 - - type: MobState - allowedStates: - - Alive - - Dead - - type: MobThresholds - thresholds: - 0: Alive - 125: Dead - - type: NoSlip - - type: StatusEffects - allowed: - - Stun - - type: Temperature - heatDamageThreshold: 5000 - currentTemperature: 310.15 - specificHeat: 42 - heatDamage: - types: - Heat : 1 #per second, scales with temperature & other constants - - type: Sprite - drawdepth: Mobs - layers: - - state: minedrone - sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi - map: ["base"] - - type: MovementIgnoreGravity - - type: Fixtures - fixtures: - fix1: - shape: - !type:PhysShapeCircle - radius: 0.35 - density: 50 - mask: - - FlyingMobMask - layer: - - FlyingMobLayer - - type: Appearance - # - type: GenericVisualizer - # visuals: - # enum.DroneVisuals.Status: - # base: - # Off: { state: mineshell } - # On: { state: minedrone } - - type: Actions - - type: UnpoweredFlashlight - - type: PointLight - enabled: false - color: "#d7f705" - radius: 7 - energy: 1 - mask: /Textures/Effects/LightMasks/cone.png - autoRot: true - - type: Tag - tags: - - ShoesRequiredStepTriggerImmune - - CannotSuicide - - type: StaticPrice - price: 750 - # Frontier - languages mechanic - - type: LanguageSpeaker - speaks: - - BorgTalk - understands: - - GalacticCommon - - BorgTalk - - SolCommon - - type: CombatMode - - type: MeleeWeapon - hidden: true - damage: - groups: - Brute: 5 - - type: EyeProtection - protectionTime: 12 - - type: TypingIndicator - proto: robot - - type: Speech - speechSounds: Pai - - type: ZombieImmune - - type: Repairable - fuelcost: 15 - doAfterDelay: 5 - - type: UserInterface - interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface - - type: Inventory - templateId: borgShort diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml new file mode 100644 index 00000000000..3c17609f494 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml @@ -0,0 +1,86 @@ +- type: body + id: ADTDroneAntagBodyMiner + name: Antag Drone Body Miner + root: head + slots: + head: + part: LightHeadBorg + connections: + - hand 1 + - hand 2 + - hand 3 + - hand 4 + - hand 5 + # - hand 6 + hand 1: + part: LeftArmBorg + hand 2: + part: LeftArmBorg + hand 3: + part: LeftArmBorg + hand 4: + part: RightArmBorg + hand 5: + part: RightArmBorg + # hand 6: + # part: RightArmBorg + +- type: body + id: ADTDroneAntagBodyEngineer + name: Antag Drone Body Engineer + root: head + slots: + head: + part: LightHeadBorg + connections: + - hand 1 + - hand 2 + - hand 3 + - hand 4 + - hand 5 + - hand 6 + - hand 7 + - hand 8 + hand 1: + part: LeftArmBorg + hand 2: + part: LeftArmBorg + hand 3: + part: LeftArmBorg + hand 4: + part: RightArmBorg + hand 5: + part: RightArmBorg + hand 6: + part: RightArmBorg + hand 7: + part: RightArmBorg + hand 8: + part: RightArmBorg + +- type: body + id: ADTDroneAntagBodyCharger + name: Antag Drone Body Charger + root: head + slots: + head: + part: LightHeadBorg + connections: + - hand 1 + - hand 2 + - hand 3 + - hand 4 + # - hand 5 + # - hand 6 + hand 1: + part: LeftArmBorg + hand 2: + part: LeftArmBorg + hand 3: + part: LeftArmBorg + hand 4: + part: RightArmBorg + # hand 5: + # part: RightArmBorg + # hand 6: + # part: RightArmBorg diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml new file mode 100644 index 00000000000..884d7ecfd7a --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml @@ -0,0 +1,74 @@ +# core basic + +- type: entity + id: ADTDroneAntagCoreBasic + parent: BaseItem + name: basic drone core + description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. + components: + - type: Sprite + sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi + state: drone-core-basic + - type: StaticPrice + price: 1250 + - type: PointLight + radius: 1.5 + energy: 3 + color: "#cc5500" + +# core advanced + +- type: entity + id: ADTDroneAntagCoreAdvanced + parent: BaseItem + name: advanced drone core + description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. + components: + - type: Sprite + sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi + state: drone-core-advanced + - type: StaticPrice + price: 2500 + - type: PointLight + radius: 1.5 + energy: 3 + color: "#9ad67a" + +# core elite + +- type: entity + id: ADTDroneAntagCoreElite + parent: BaseItem + name: elite drone core + description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. + components: + - type: Sprite + sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi + state: drone-core-elite + - type: StaticPrice + price: 5000 + - type: PointLight + radius: 1.5 + energy: 3 + color: "#b93fc4" +# ff517a + +# core command + +- type: entity + id: ADTDroneAntagCoreCommand + parent: BaseItem + name: command drone core + description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. + components: + - type: Sprite + sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi + state: drone-core-command + - type: StaticPrice + price: 7500 + - type: PointLight + radius: 1.5 + energy: 3 + color: "#2f8bd6" + +# c351ff diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml new file mode 100644 index 00000000000..954621567df --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -0,0 +1,646 @@ +- type: entity + save: false + abstract: true + id: ADTipcdronebase1 + components: + - type: Reactive + groups: + Acidic: [Touch] + - type: Input + context: "human" + - type: InputMover + - type: ZombieImmune + - type: MobMover + - type: DamageOnHighSpeedImpact + damage: + types: + Blunt: 5 + soundHit: + path: /Audio/Effects/hit_kick.ogg + - type: Clickable + - type: Damageable + damageContainer: Inorganic # Note that for dumb reasons, this essentially makes them a wall. + # - type: Bloodstream # This is left commented out because it's not necessary for a robot, but you may want it. + # bloodReagent: MotorOil + # bloodlossDamage: + # types: + # Bloodloss: + # 1 + # bloodlossHealDamage: + # types: + # Bloodloss: + # -0.25 + - type: InteractionOutline + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 185 ### влияет на шанс Disarm. было 50 + mask: + - MobMask + layer: + - MobLayer + - type: MovementSpeedModifier + baseWalkSpeed: 3 + baseSprintSpeed: 4 + - type: Sprite + sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + state: ipc_full + noRot: true + drawdepth: Mobs + - type: Physics + bodyType: KinematicController + - type: Body + prototype: Drone + - type: DoAfter + - type: Examiner + # - type: Recyclable + # safe: false + - type: StandingState + - type: Alerts + # - type: EyeProtection # You'll want this if your robot can't wear glasses, like an IPC. + # protectionTime: 12 + # - type: Silicon + # entityType: enum.SiliconType.Player + # batteryPowered: false # Needs to also have a battery! + # chargeThresholdMid: 0.60 + # chargeThresholdLow: 0.30 + # chargeThresholdCritical: 0 + # speedModifierThresholds: + # 4: 1 + # 3: 1 + # 2: 0.80 + # 1: 0.45 + # 0: 0.00 + # - type: RadiationReceiver + # - type: AtmosExposed + # - type: Temperature + # heatDamageThreshold: 700 + # coldDamageThreshold: 0 + # currentTemperature: 400 + # specificHeat: 24 + # coldDamage: + # types: + # Cold: 0.1 # Per second, scales with temperature & other constants. + # heatDamage: + # types: + # Heat: 0.25 # Per second, scales with temperature & other constants. + # atmosTemperatureTransferEfficiency: 0.05 + # - type: ThermalRegulator + # metabolismHeat: 600 + # radiatedHeat: 350 + # implicitHeatRegulation: 350 + # sweatHeatRegulation: 0 # This might end up being a problem if they can't cool themselves down? + # shiveringHeatRegulation: 1200 + # normalBodyTemperature: 400 + # thermalRegulationTemperatureThreshold: 125 + +- type: entity + parent: ADTipcdronebase1 + id: ADTipcdronebase2 + abstract: true + components: + - type: StatusIcon + - type: MobState + allowedStates: + - Alive + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 100: Critical + 200: Dead + - type: Damageable + damageContainer: ADTSiliconDamageContainer # Not a wall. + - type: Stamina + critThreshold: 300 + - type: Destructible + thresholds: + - trigger: !type:DamageTrigger + damage: 500 + behaviors: + - !type:GibBehavior {} + - type: Icon + sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + state: ipc_full + - type: MindContainer + showExamineInfo: true + - type: Sprite + noRot: true + drawdepth: Mobs + layers: + - map: ["enum.HumanoidVisualLayers.Chest"] + - map: ["enum.HumanoidVisualLayers.Head"] + - map: ["enum.HumanoidVisualLayers.Snout"] + - map: ["enum.HumanoidVisualLayers.Eyes"] + - map: ["enum.HumanoidVisualLayers.RArm"] + - map: ["enum.HumanoidVisualLayers.LArm"] + - map: ["enum.HumanoidVisualLayers.RLeg"] + - map: ["enum.HumanoidVisualLayers.LLeg"] + - shader: StencilClear + sprite: Mobs/Species/Human/parts.rsi + state: l_leg + - shader: StencilMask + map: ["enum.HumanoidVisualLayers.StencilMask"] + sprite: Mobs/Customization/masking_helpers.rsi + state: unisex_full + visible: false + - map: ["enum.HumanoidVisualLayers.LFoot"] + - map: ["enum.HumanoidVisualLayers.RFoot"] + - map: ["socks"] + - map: ["underpants"] + - map: ["undershirt"] + - map: ["jumpsuit"] + - map: ["enum.HumanoidVisualLayers.LHand"] + - map: ["enum.HumanoidVisualLayers.RHand"] + - map: ["enum.HumanoidVisualLayers.Handcuffs"] + color: "#ffffff" + sprite: Objects/Misc/handcuffs.rsi + state: body-overlay-2 + visible: false + - map: ["id"] + - map: ["gloves"] + - map: ["shoes"] + - map: ["ears"] + - map: ["outerClothing"] + - map: ["eyes"] + - map: ["belt"] + - map: ["neck"] + - map: ["back"] + - map: ["enum.HumanoidVisualLayers.FacialHair"] + - map: ["enum.HumanoidVisualLayers.Hair"] + - map: ["enum.HumanoidVisualLayers.HeadSide"] + - map: ["enum.HumanoidVisualLayers.HeadTop"] + - map: ["mask"] + - map: ["head"] + - map: ["pocket1"] + - map: ["pocket2"] + - map: ["enum.HumanoidVisualLayers.Tail"] + #- map: ["enum.HumanoidVisualLayers.Wings"] + - map: ["clownedon"] # Dynamically generated + sprite: "Effects/creampie.rsi" + state: "creampie_human" + visible: false + - type: Repairable + doAfterDelay: 5 # was 18 + damage: + types: + Blunt: -20 + Slash: -20 + Piercing: -20 + #bloodlossModifier: -100 +# - type: Bloodstream ### я добавил компонент Bloodstream как заглушку. Он нужен, +# # чтобы хилиться с помощью CableStack. Дело в том, что HealingSystem использует проверку на наличие BloodstreamComponent. +# # В любом случае Bloodstream здесь является костылём, чтобы не лезть в код. В будущем можно зделать для IPC нормальную bloodstream систему. +# damageBleedModifiers: BloodlossIPC +# bloodReagent: Water +# bleedReductionAmount: 0 +# bloodMaxVolume: 0 +# chemicalMaxVolume: 0 +# bleedPuddleThreshold: 3 +# bleedRefreshAmount: 0 +# bloodLossThreshold: 0 +# maxBleedAmount: 0 +# bloodlossDamage: +# types: +# Burn: 1.5 +# bloodlossHealDamage: +# types: +# Burn: 0 + - type: Flammable + fireSpread: true + canResistFire: true + damage: + types: + Heat: 0.75 #per second, scales with number of fire 'stacks' + # - type: Barotrauma # Not particularly modifiable. In the future, some response to pressure changes would be nice. + # damage: + # types: + # Blunt: 0.28 #per second, scales with pressure and other constants. + - type: Polymorphable + - type: Identity + - type: MovedByPressure + - type: DamageOnHighSpeedImpact + damage: + types: + Blunt: 5 + soundHit: + path: /Audio/Effects/metal_break1.ogg + - type: LagCompensation + - type: RangedDamageSound + soundGroups: + Brute: + collection: MetalBulletImpact + soundTypes: + Heat: + collection: MetalLaserImpact + - type: Tag + tags: + - CanPilot + - FootstepSound + - DoorBumpOpener + - type: Hands + - type: Inventory + templateId: human + - type: InventorySlots + - type: Appearance + - type: GenericVisualizer + visuals: + enum.CreamPiedVisuals.Creamed: + clownedon: + True: { visible: true } + False: { visible: false } + - type: RotationVisuals + - type: FloatingVisuals + - type: FireVisuals + sprite: Mobs/Effects/onfire.rsi + normalState: Generic_mob_burning + alternateState: Standing + fireStackAlternateState: 3 + - type: CombatMode + canDisarm: true + - type: Climbing + - type: Cuffable + - type: AnimationPlayer + - type: Buckle + - type: CreamPied + - type: Stripping + - type: Strippable + - type: UserInterface + interfaces: + - key: enum.VoiceMaskUIKey.Key + type: VoiceMaskBoundUserInterface + - key: enum.HumanoidMarkingModifierKey.Key + type: HumanoidMarkingModifierBoundUserInterface + - key: enum.StrippingUiKey.Key + type: StrippableBoundUserInterface + - type: StandingState + - type: CanEscapeInventory + # - type: HumanoidAppearance + # species: IPC + - type: Body + prototype: IPC + requiredLegs: 2 + - type: Ensnareable + sprite: Objects/Misc/ensnare.rsi + - type: Speech + speechSounds: Pai + - type: MeleeWeapon + hidden: true + soundHit: + collection: Punch + angle: 30 + animation: WeaponArcFist + attackRate: 1 + damage: + types: + Blunt: 6 # It's tough. + - type: MobPrice + price: 1500 # Kidnapping a living person and selling them for cred is a good move. + deathPenalty: 0.01 # However they really ought to be living and intact, otherwise they're worth 100x less. + - type: Pullable + - type: Puller + - type: Reactive + groups: + Flammable: [Touch] + Extinguish: [Touch] + Acidic: [Touch, Ingestion] + reactions: + - reagents: [Water, SpaceCleaner] + methods: [Touch] + effects: + - !type:WashCreamPieReaction + - type: DamageVisuals + thresholds: [20, 40, 100] + targetLayers: + - "enum.HumanoidVisualLayers.Chest" + - "enum.HumanoidVisualLayers.Head" + - "enum.HumanoidVisualLayers.LArm" + - "enum.HumanoidVisualLayers.LLeg" + - "enum.HumanoidVisualLayers.RArm" + - "enum.HumanoidVisualLayers.RLeg" + damageOverlayGroups: + Brute: + sprite: Mobs/Effects/brute_damage.rsi + color: "#1a1a1a" + # Burn: + # sprite: Mobs/Effects/burn_damage.rsi + # Organs + - type: IdExaminable + - type: HealthExaminable + examinableTypes: + - Blunt + - Slash + - Piercing + - Heat + - Shock + - type: StatusEffects + allowed: + - Stun + - type: Blindable + +- type: entity + id: ADTDroneAntagIPC + parent: ADTipcdronebase2 + name: drone soldier + suffix: Antag Drone IPC + description: Вам, вероятно, не стоит стоять рядом с ним, чтобы проверить, включен ли он. + components: + - type: InteractionPopup + interactSuccessString: petting-success-ipc + #interactFailureString: petting-failure-cleanbot + interactSuccessSound: + path: /Audio/Ambience/Objects/periodic_beep.ogg + # - type: SiliconEmitSoundOnDrained + # sound: "/Audio/Weapons/Guns/EmptyAlarm/smg_empty_alarm.ogg" + # interval: 15 + # playChance: 1 + # popUp: silicon-power-low + - type: Icon + sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + state: ipc_full + - type: Sprite + noRot: true + drawdepth: Mobs + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + state: ipc_full + - map: ["enum.HumanoidVisualLayers.Chest"] + - map: ["enum.HumanoidVisualLayers.Head"] + - map: ["enum.HumanoidVisualLayers.Snout"] + - map: ["enum.HumanoidVisualLayers.Eyes"] + - map: ["enum.HumanoidVisualLayers.RArm"] + - map: ["enum.HumanoidVisualLayers.LArm"] + - map: ["enum.HumanoidVisualLayers.RLeg"] + - map: ["enum.HumanoidVisualLayers.LLeg"] + - shader: StencilClear + sprite: Mobs/Species/Human/parts.rsi + state: l_leg + - shader: StencilMask + map: ["enum.HumanoidVisualLayers.StencilMask"] + sprite: Mobs/Customization/masking_helpers.rsi + state: unisex_full + visible: false + - map: ["enum.HumanoidVisualLayers.LFoot"] + - map: ["enum.HumanoidVisualLayers.RFoot"] + - map: ["socks"] + - map: ["underpants"] + - map: ["undershirt"] + - map: ["jumpsuit"] + - map: ["enum.HumanoidVisualLayers.LHand"] + - map: ["enum.HumanoidVisualLayers.RHand"] + - map: ["enum.HumanoidVisualLayers.Handcuffs"] + color: "#ffffff" + sprite: Objects/Misc/handcuffs.rsi + state: body-overlay-2 + visible: false + - map: ["id"] + - map: ["gloves"] + - map: ["shoes"] + - map: ["ears"] + - map: ["outerClothing"] + - map: ["eyes"] + - map: ["belt"] + - map: ["neck"] + - map: ["back"] + - map: ["enum.HumanoidVisualLayers.FacialHair"] + - map: ["enum.HumanoidVisualLayers.Hair"] + - map: ["enum.HumanoidVisualLayers.HeadSide"] + - map: ["enum.HumanoidVisualLayers.HeadTop"] + - map: ["mask"] + - map: ["head"] + - map: ["pocket1"] + - map: ["pocket2"] + - map: ["enum.HumanoidVisualLayers.Tail"] + #- map: ["enum.HumanoidVisualLayers.Wings"] + - map: ["clownedon"] # Dynamically generated + sprite: "Effects/creampie.rsi" + state: "creampie_human" + visible: false + - type: MobState + allowedStates: + - Alive + - Critical + - Dead + - type: MobThresholds + thresholds: + 0: Alive + 100: Critical + 200: Dead + stateAlertDict: + Alive: BorgHealth + Critical: BorgCrit + Dead: BorgDead + + allowRevives: true # Для воскрешения достаточно починить урон. - ss220. + - type: NpcFactionMember + factions: + - DroneAntag + - type: NameIdentifier + group: ADTDroneAntagSoldier + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + color: "#cc5500" + radius: 7 + energy: 1.7 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + - type: TypingIndicator + proto: robot + - type: Prying + pryPowered: true + force: true + - type: AutoImplant + implants: + - SyndUniversalTranslatorImplanter + - type: Repairable + doAfterDelay: 5 # was 18 + damage: + types: + Blunt: -20 + Slash: -20 + Piercing: -20 + - type: Damageable + damageModifierSet: ADTAntagDroneIPCDamageModSet + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Machines/warning_buzzer.ogg + params: + volume: 5 + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: MetalBreak + - !type:SpawnEntitiesBehavior + spawn: + ADTDroneAntagCoreAdvanced: + min: 1 + max: 1 + SheetSteel1: + min: 5 + max: 5 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: SiliconDownOnDead + - type: Inventory + templateId: ipc + - type: EyeProtection + protectionTime: 30 + # - type: Battery + # maxCharge: 75000 + # startingCharge: 75000 + # - type: Silicon + # entityType: enum.SiliconType.Player + # batteryPowered: true + # drainPerSecond: 30 + # chargeThresholdMid: 0.80 + # chargeThresholdLow: 0.35 + # chargeThresholdCritical: 0.10 + # speedModifierThresholds: + # 4: 1 + # 3: 1 + # 2: 0.80 + # 1: 0.45 + # 0: 0.00 + # - type: BatteryDrinker + # - type: Wires + # boardName: "ipc-board-name" + # layoutId: IPC + # - type: WiresPanel + - type: EncryptionKeyHolder + keySlots: 2 + examineWhileLocked: false + keysExtractionMethod: Cutting + - type: IntrinsicRadioReceiver + - type: IntrinsicRadioTransmitter + channels: + - ADTDroneAntagChannel + - Common + - type: ActiveRadio + channels: + - ADTDroneAntagChannel + - Common +# - type: UnblockableSpeech + - type: ContentEye + maxZoom: 1.0,1.0 + - type: LightningTarget + priority: 4 + lightningExplode: false + - type: TriggerOnMobstateChange + mobState: + - Dead + - type: EmitSoundOnTrigger + sound: + path: /Audio/ADT/IPC/borg_deathsound.ogg + - type: LanguageSpeaker + speaks: + - GalacticCommon + - BorgTalk + - RobotTalk + - SolCommon + understands: + - GalacticCommon + - BorgTalk + - RobotTalk + - SolCommon + - type: Tag + tags: + - ChangelingBlacklist + - ShoesRequiredStepTriggerImmune + - CanPilot + - FootstepSound + - DoorBumpOpener + - type: SizeAttributeWhitelist # Frontier + tall: true + tallscale: 1.1 + short: true + shortscale: 0.9 + +# damage modifier set + +- type: damageModifierSet + id: ADTAntagDroneIPCDamageModSet + coefficients: + Blunt: 0.35 + Slash: 0.35 + Piercing: 0.45 + Heat: 0.20 + Explosive: 0.25 + Structural: 0 + # zap + Shock: 0.5 + Cold: 0 + Caustic: 0.3 + + +# DRONE NAME IDENTIFIER + + +# - type: nameIdentifierGroup +# id: ADTDroneAntagMiner +# prefix: drone miner SD +# fullName: true +# minValue: 100 +# maxValue: 999 + +# - type: nameIdentifierGroup +# id: ADTDroneAntagSoldier +# prefix: drone soldier SD +# fullName: true +# minValue: 100 +# maxValue: 999 + + +# IPC DRONE NAME IDENTIFIER + + +# - type: nameIdentifierGroup +# id: ADTIPCAntag +# prefix: BF +# fullName: true +# minValue: 10000 +# maxValue: 99999 + + +# DRONE RADIO CHANNEL + + +# - type: radioChannel +# id: ADTDroneAntagChannel +# name: Дроны +# keycode: 'й' +# frequency: 1301 +# color: "#690e0e" + + +# DRONE ENCRYPTION KEY + + +# - type: entity +# parent: EncryptionKey +# id: ADTEncryptionKeyDroneAntag +# name: Ключ к каналу дронов +# description: Ключ к доступу каналов дронов. +# components: +# - type: EncryptionKey +# channels: +# - ADTDroneAntag +# - Common +# defaultChannel: ADTDroneAntag +# - type: Sprite +# layers: +# - state: crypt_silver +# - state: rd_label diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml new file mode 100644 index 00000000000..abd7c296e71 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml @@ -0,0 +1,19 @@ +- type: inventoryTemplate + id: droneantaginventory + slots: + - name: back + slotTexture: back + slotFlags: BACK + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 3,0 + strippingWindowPos: 0,6 + displayName: Back + - name: belt + slotTexture: belt + slotFlags: BELT + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 3,1 + strippingWindowPos: 1,6 + displayName: Belt diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml new file mode 100644 index 00000000000..4e8ef423d4e --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml @@ -0,0 +1,44 @@ +- type: entity + name: drone miner spawner + id: ADTSpawnerDroneAntagMiner + parent: MarkerBase + components: + - type: Sprite + layers: + - sprite: ADT/Markers/job.rsi + state: green + - sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi + state: mineshell + - type: ConditionalSpawner + prototypes: + - ADTDroneAntagMiner + +- type: entity + name: drone engineer spawner + id: ADTSpawnerDroneAntagEngineer + parent: MarkerBase + components: + - type: Sprite + layers: + - sprite: ADT/Markers/job.rsi + state: green + - sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi + state: engshell + - type: ConditionalSpawner + prototypes: + - ADTDroneAntagMiner + +- type: entity + name: drone charger spawner + id: ADTSpawnerDroneAntagCharger + parent: MarkerBase + components: + - type: Sprite + layers: + - sprite: ADT/Markers/job.rsi + state: green + - sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi + state: chargeshell + - type: ConditionalSpawner + prototypes: + - ADTDroneAntagMiner diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml new file mode 100644 index 00000000000..140a929a8f5 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml @@ -0,0 +1,106 @@ +- type: entity + name: ore bag + id: OreBagAntagDrone + parent: BaseStorageItem + suffix: Antag Drone + components: + - type: MagnetPickup + - type: Sprite + sprite: Objects/Specific/Mining/ore_bag.rsi + state: icon + - type: Clothing + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + quickEquip: false + slots: + - belt + - type: Item + size: Ginormous + - type: Storage + maxItemSize: Normal + grid: + - 0,0,9,3 + quickInsert: true + areaInsert: true + whitelist: + tags: + - ArtifactFragment + - Ore + - type: Dumpable + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneMiner + name: backpack antag drone miner + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: MiningDrill + - id: WeaponProtoKineticAccelerator + - id: JawsOfLife + - id: PowerDrill + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneEngineer + name: backpack antag drone engineer + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: WelderIndustrial + - id: JawsOfLife + - id: PowerDrill + - id: Multitool + - id: trayScanner + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneCharger + name: backpack antag drone charger + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: JawsOfLife + - id: WeaponLaserGun + +- type: startingGear + id: ADTAntagDroneGearMiner + equipment: + back: ClothingBackpackAntagDroneMiner + belt: OreBagAntagDrone + # inhand: + # - MiningDrill + # - WeaponProtoKineticAccelerator + # - JawsOfLife + # - PowerDrill + # - OreBag + +- type: startingGear + id: ADTAntagDroneGearEngineer + equipment: + back: ClothingBackpackAntagDroneEngineer + belt: OreBagAntagDrone + # inhand: + # - WelderIndustrial + # - JawsOfLife + # - PowerDrill + # - Multitool + # - trayScanner + # - OreBag + +- type: startingGear + id: ADTAntagDroneGearCharger + equipment: + back: ClothingBackpackAntagDroneCharger + belt: OreBagAntagDrone + # inhand: + # - JawsOfLife + diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml new file mode 100644 index 00000000000..efd7b8e4a0f --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml @@ -0,0 +1,21 @@ +- type: npcFaction + id: DroneAntag + hostile: + - SimpleHostile + - Syndicate + - Xeno + - Zombie + - Revolutionary + - NanoTrasen + - PetsNT + - Dragon + +- type: entity + parent: BaseWeaponTurret + id: ADTWeaponTurretDroneAntag + suffix: Drone Antag + components: + - type: NpcFactionMember + factions: + - DroneAntag + diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml new file mode 100644 index 00000000000..97d05385cf6 --- /dev/null +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml @@ -0,0 +1,761 @@ +# - type: entity +# save: false +# abstract: true +# id: ADTDroneAntagBaseOLD +# components: +# - type: MindContainer +# - type: InputMover +# - type: MobMover +# - type: Reactive +# groups: +# Acidic: [Touch] +# - type: Input +# context: "human" +# - type: DamageOnHighSpeedImpact +# damage: +# types: +# Blunt: 5 +# soundHit: +# collection: MetalThud +# - type: Clickable +# - type: Damageable +# damageContainer: Inorganic +# - type: Bloodstream +# bloodReagent: Oil +# bloodlossDamage: +# types: +# Bloodloss: +# 1 +# bloodlossHealDamage: +# types: +# Bloodloss: +# -1 +# - type: InteractionOutline +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# # Circles, cuz rotation of rectangles looks very bad +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - MobMask +# layer: +# - MobLayer +# - type: MovementSpeedModifier +# baseWalkSpeed : 4 +# baseSprintSpeed : 3 +# - type: Sprite +# noRot: true +# drawdepth: Mobs +# - type: Physics +# bodyType: KinematicController +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Drone +# - type: IntrinsicRadioReceiver +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: DoAfter +# - type: Pullable +# - type: Examiner +# - type: Puller +# - type: StandingState +# - type: Alerts +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon + +# - type: entity +# name: drone miner +# id: ADTDroneAntagMinerOLD +# parent: ADTDroneAntagBase +# components: +# - type: Drone +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# - type: Strippable +# - type: UserInterface +# interfaces: +# - key: enum.StrippingUiKey.Key +# type: StrippableBoundUserInterface +# # - key: enum.SiliconLawsUiKey.Key +# # type: SiliconLawBoundUserInterface +# # - type: SiliconLawBound +# # - type: SiliconLawProvider +# # laws: Drone +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - Stun +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# - type: Sprite +# drawdepth: Mobs +# layers: +# - state: mineshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - FlyingMobMask +# layer: +# - FlyingMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: mineshell } +# On: { state: minedrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# color: "#d7f705" +# radius: 7 +# energy: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# - CannotSuicide +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon +# - type: CombatMode +# - type: MeleeWeapon +# hidden: true +# damage: +# groups: +# Brute: 5 +# - type: EyeProtection +# protectionTime: 12 +# - type: TypingIndicator +# proto: robot +# - type: Speech +# speechSounds: Pai +# - type: ZombieImmune +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Human + + + +# - type: entity +# name: drone soldier +# id: ADTDroneAntagEngineerOLD +# parent: ADTDroneAntagBase +# components: +# - type: Drone +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# - type: Strippable +# - type: UserInterface +# interfaces: +# - key: enum.StrippingUiKey.Key +# type: StrippableBoundUserInterface +# # - key: enum.SiliconLawsUiKey.Key +# # type: SiliconLawBoundUserInterface +# # - type: SiliconLawBound +# # - type: SiliconLawProvider +# # laws: Drone +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - Stun +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# # - type: Sprite +# # drawdepth: Mobs +# # layers: +# # - state: engshell +# # sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi +# # map: ["base"] +# - type: Sprite +# drawdepth: Mobs +# layers: +# - state: engshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - FlyingMobMask +# layer: +# - FlyingMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: engshell } +# On: { state: engdrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# color: "#d7f705" +# radius: 7 +# energy: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# - CannotSuicide +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon +# - type: CombatMode +# - type: MeleeWeapon +# hidden: true +# damage: +# groups: +# Brute: 5 +# - type: EyeProtection +# protectionTime: 12 +# - type: TypingIndicator +# proto: robot +# - type: Speech +# speechSounds: Pai +# - type: ZombieImmune +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Human + + + +# - type: entity +# name: drone sodlier +# id: ADTDroneAntagChargerOLD +# parent: ADTDroneAntagBase +# components: +# - type: Drone +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# - type: Strippable +# - type: UserInterface +# interfaces: +# - key: enum.StrippingUiKey.Key +# type: StrippableBoundUserInterface +# # - key: enum.SiliconLawsUiKey.Key +# # type: SiliconLawBoundUserInterface +# # - type: SiliconLawBound +# # - type: SiliconLawProvider +# # laws: Drone +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - Stun +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# - type: Sprite +# drawdepth: Mobs +# layers: +# - state: chargeshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - FlyingMobMask +# layer: +# - FlyingMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: chargeshell } +# On: { state: chargedrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# color: "#d7f705" +# radius: 7 +# energy: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# - CannotSuicide +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon +# - type: CombatMode +# - type: MeleeWeapon +# hidden: true +# damage: +# groups: +# Brute: 5 +# - type: EyeProtection +# protectionTime: 12 +# - type: TypingIndicator +# proto: robot +# - type: Speech +# speechSounds: Pai +# - type: ZombieImmune +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Human + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# OLD DRONE BASE + + +# - type: entity +# abstract: true +# id: ADTDroneAntagBase +# components: +# - type: MindContainer +# - type: InputMover +# - type: MobMover +# - type: Clickable +# - type: CombatMode +# - type: InteractionOutline +# - type: DoAfter +# - type: Pullable +# - type: Examiner +# - type: Puller +# - type: StandingState +# - type: Alerts +# - type: Rotatable +# - type: RotationVisuals +# - type: FloatingVisuals +# - type: Reactive +# groups: +# Acidic: [Touch] +# - type: Input +# context: "human" +# - type: DamageOnHighSpeedImpact +# damage: +# types: +# Blunt: 5 +# soundHit: +# collection: MetalThud +# - type: Damageable +# damageContainer: Inorganic +# - type: Bloodstream +# bloodReagent: Oil +# bloodlossDamage: +# types: +# Bloodloss: +# 1 +# bloodlossHealDamage: +# types: +# Bloodloss: +# -1 +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# # Circles, cuz rotation of rectangles looks very bad +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - MobMask +# layer: +# - MobLayer +# - type: MovementSpeedModifier +# baseWalkSpeed : 4 +# baseSprintSpeed : 3 +# - type: EyeProtection +# protectionTime: 12 +# - type: Sprite +# noRot: true +# drawdepth: Mobs +# - type: Physics +# bodyType: KinematicController +# - type: Hands +# showInHands: false +# - type: Body +# prototype: Drone +# - type: IntrinsicRadioReceiver +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Tag +# tags: +# - ShoesRequiredStepTriggerImmune +# - CannotSuicide +# - DoorBumpOpener +# - type: Access +# tags: +# - External +# - type: TypingIndicator +# proto: robot +# - type: Speech +# speechSounds: Pai +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon + + +# OLD FIRST DRONE + + +# - type: entity +# name: drone miner +# id: ADTDroneAntagMiner +# parent: ADTDroneAntagBase +# components: +# - type: NameIdentifier +# group: ADTDroneAntag +# - type: Inventory +# templateId: drone +# - type: InventorySlots +# - type: MovementSpeedModifier +# baseWalkSpeed : 5 +# baseSprintSpeed : 5 +# - type: MobState +# allowedStates: +# - Alive +# - Dead +# - type: ZombieImmune +# - type: MobThresholds +# thresholds: +# 0: Alive +# 125: Dead +# - type: NoSlip +# - type: StatusEffects +# allowed: +# - SlowedDown +# - type: SlowOnDamage +# speedModifierThresholds: +# 80: 0.5 +# - type: Temperature +# heatDamageThreshold: 5000 +# currentTemperature: 310.15 +# specificHeat: 42 +# heatDamage: +# types: +# Heat : 1 #per second, scales with temperature & other constants +# - type: Sprite +# drawdepth: Mobs +# netsync: true +# layers: +# - state: mineshell +# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi +# map: ["base"] +# - type: MovementIgnoreGravity +# - type: IntrinsicRadioTransmitter +# channels: +# - ADTDroneAntag +# - Common +# - type: ActiveRadio +# channels: +# - ADTDroneAntag +# - Common +# - type: Fixtures +# fixtures: +# fix1: +# shape: +# !type:PhysShapeCircle +# radius: 0.35 +# density: 50 +# mask: +# - FlyingMobMask +# layer: +# - FlyingMobLayer +# - type: Appearance +# - type: GenericVisualizer +# visuals: +# enum.DroneVisuals.Status: +# base: +# Off: { state: mineshell } +# On: { state: minedrone } +# # - type: ReplacementAccent +# # accent: silicon +# - type: Repairable +# fuelcost: 15 +# doAfterDelay: 5 +# - type: Actions +# - type: UnpoweredFlashlight +# - type: PointLight +# enabled: false +# radius: 3.5 +# softness: 1 +# mask: /Textures/Effects/LightMasks/cone.png +# autoRot: true +# - type: StaticPrice +# price: 250 +# # Frontier - languages mechanic +# - type: LanguageSpeaker +# speaks: +# - BorgTalk +# understands: +# - GalacticCommon +# - BorgTalk +# - SolCommon + + +# IPC DRONE + + +# - type: entity +# name: drone soldier +# id: ADTDroneIPCAntag +# parent: ADTDroneAntagBase +# components: +# - type: MobThresholds +# thresholds: +# 0: Alive +# 100: Critical +# 200: Dead + + +# DRONE NAME IDENTIFIER + + +# - type: nameIdentifierGroup +# id: ADTDroneAntag +# prefix: SD +# fullName: true +# minValue: 10000 +# maxValue: 99999 + + +# IPC DRONE NAME IDENTIFIER + + +# - type: nameIdentifierGroup +# id: ADTIPCAntag +# prefix: BF +# fullName: true +# minValue: 10000 +# maxValue: 99999 + + +# DRONE RADIO CHANNEL + + +# - type: radioChannel +# id: ADTDroneAntagChannel +# name: Дроны +# keycode: 'й' +# frequency: 1301 +# color: "#690e0e" + + +# DRONE ENCRYPTION KEY + + +# - type: entity +# parent: EncryptionKey +# id: ADTEncryptionKeyDroneAntag +# name: Ключ к каналу дронов +# description: Ключ к доступу каналов дронов. +# components: +# - type: EncryptionKey +# channels: +# - ADTDroneAntag +# - Common +# defaultChannel: ADTDroneAntag +# - type: Sprite +# layers: +# - state: crypt_silver +# - state: rd_label + + + + diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml deleted file mode 100644 index 85993d4d654..00000000000 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/drone_modules.yml +++ /dev/null @@ -1,47 +0,0 @@ -- type: entity - id: ADTDroneModuleMiner - parent: [ BaseBorgModule, BaseProviderBorgModule ] - name: miner drone tools module - components: - - type: Sprite - layers: - - state: engineering - - state: icon-tools-adv - - type: ItemBorgModule - items: - - MiningDrill - - WeaponProtoKineticAccelerator - - JawsOfLife - - PowerDrill - - OreBag - -- type: entity - id: ADTDroneModuleEngineer - parent: [ BaseBorgModule, BaseProviderBorgModule ] - name: engineer drone tools module - components: - - type: Sprite - layers: - - state: engineering - - state: icon-tools-adv - - type: ItemBorgModule - items: - - WelderIndustrial - - JawsOfLife - - PowerDrill - - Multitool - - trayScanner - - OreBag - -- type: entity - id: ADTDroneModuleCharger - parent: [ BaseBorgModule, BaseProviderBorgModule ] - name: charger drone tools module - components: - - type: Sprite - layers: - - state: engineering - - state: icon-tools-adv - - type: ItemBorgModule - items: - - JawsOfLife diff --git a/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml b/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml index 87701658e8c..668f5f99f0c 100644 --- a/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml +++ b/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml @@ -1,6 +1,7 @@ - type: radioChannel - id: ADTDroneAntag + id: ADTDroneAntagChannel name: Дроны keycode: 'й' frequency: 1301 color: "#690e0e" + longRange: true diff --git a/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml b/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml index 026f9e41f87..0525f422152 100644 --- a/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml +++ b/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml @@ -6,9 +6,9 @@ components: - type: EncryptionKey channels: - - ADTDroneAntag + - ADTDroneAntagChannel - Common - defaultChannel: ADTDroneAntag + defaultChannel: ADTDroneAntagChannel - type: Sprite layers: - state: crypt_silver diff --git a/Resources/Prototypes/name_identifier_groups.yml b/Resources/Prototypes/name_identifier_groups.yml index 07a272ac3d1..6427aa13268 100644 --- a/Resources/Prototypes/name_identifier_groups.yml +++ b/Resources/Prototypes/name_identifier_groups.yml @@ -12,8 +12,15 @@ prefix: ГОЛО # Corvax-Localization - type: nameIdentifierGroup - id: ADTDroneAntag - prefix: SD + id: ADTDroneAntagMiner + prefix: drone miner SD + fullName: true + minValue: 100 + maxValue: 999 + +- type: nameIdentifierGroup + id: ADTDroneAntagSoldier + prefix: drone soldier SD fullName: true minValue: 100 maxValue: 999 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png new file mode 100644 index 0000000000000000000000000000000000000000..0e492e395df638d8f03c2802d8a437cf6211c055 GIT binary patch literal 657 zcmV;C0&e|@P)A!o!6X~f-G*k_fThH0kz(kjA`}`yCD$Ij+Jhjy>A?y@Z$dy&DCsQ(Jha#T z10@yo;H8HODcXxIrD#JU(RS^c_yOY~?xKk#JDb&0elUmm`n}K0yfXuR_0^*`R_8=7 z^G|u1q-wfQHC;S@a9vy-{=&xUoUq&e3jo04e2UAXF_@TUGLv9!IpfJk8bH-_VF%yY zufgk=089=?SX<5@y9-hPr2UTKnC~a}wGRKy&qxT~8jK0bZ5flQ5#qN@Ta~2z&>qH!MuE z2EhGC#lX(iI}XbxOiWX)o$#zwtZKRl1r?&vn6t{o`4riFiPmI?44B%r1=y zfaecCQ*T&=f{FuSt5Q91YbOUVyEG;aw=HH?$`nrzI_<5A_WfJq-v9t?J}n1k1`w8Y z+6Gd3)`_s>>%PMgORF6oj_uMF;hhbRH+hCKS0%wz}kfwsT*Sk=5|61z=B98 zq=FPA7=n<b$;;in_x|p8@7)=eELjkdNQy<`<#~b( z(-Hs&gFffk$B2*bgefEdTBkKB$Xqw(5#T0|Z)~D%@6yoDSG8s*oI(}gRF0Q?{s!{1VL=FpA_WNb-A{-{8DU_Z5T(NTFX$3?803YSlJ$Y=_7xq)<2mjK%BCQh##u7F_-(-L`E;pn(X z&2gWD0k~Vo+!Ajaw$4$d` z5pM0T34jmJJ2<^AnyPyuTx#`--|2!0*xFwczrS|LzN+$GiF@tih4%MP?|K9Pd@59> ztc>V(&m;gHCJN5&3xcnJM>{EzzNZs?_JgzpF9yLMv4sQxBS$Rgbvq4TTVR-$7^`#< zmWY`G+~n>p2wvrfA|jN>Xc1;Qps6~wdS&9gYpPBw1OYQGEX5Nd7d1xCyr$~By=Za& z?Bx2lAQv^*Yd6qT-TU_14RTRq(cJz?rB+2Lo)9nfTcQ+C2*1Bue(-JKaMEh^XK44p zl7Acq+_b-aQDOi901jnXNoGw=04e|g00;m8000000Mb*F00000NkvXXu0mjfLMbZL literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json new file mode 100644 index 00000000000..765c511befe --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json @@ -0,0 +1,14 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "done by discord: mnogo_znal", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "drone-core-basic" + } + ] + } diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/drone-core-command.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/drone-core-command.png new file mode 100644 index 0000000000000000000000000000000000000000..4c85865f6167805604dff6ae42c05d406686e48d GIT binary patch literal 629 zcmV-*0*d{KP)`kR-Zg(DdGB&Mkp$?j1~dF zgHU}6N&w^Ik392dPhY^jC}XD_0|0z?inq=S41ja1!!+}9$t#}Xv7Yn$0uVa?oeu%P z=c61he-$vVm2SN*E8ig$5CD+kv6dxJ(Xij*)3dX9l1u<7HGY9Jzh*KrOh(P?%Ca_1 zY2-GdOy7fxmE)BqONll1eOi@6;K zAHz{^yjpWx=3W1--3<|?d9(0YnXG3rr+%n=azSf^C0}CLd3a6@y+)bIzB`_If25P zS8$w@K;8mrljeUMRPliT;2&!F;)~U2$va(Z literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json new file mode 100644 index 00000000000..9517bd8af44 --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json @@ -0,0 +1,14 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "done by discord: mnogo_znal", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "drone-core-command" + } + ] + } diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/drone-core-elite.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/drone-core-elite.png new file mode 100644 index 0000000000000000000000000000000000000000..e7cddbf67d435ea1a83870c1bbfe7d5c989d5050 GIT binary patch literal 652 zcmV;70(1R|P)uy;PH#531>g zXu2U!?r)0xIhJ~WRtWGd#F(rzJj&f9UDI} zfTPnNtq_3Ku9L|o-6GVR`Xw4DPhfyd`VR5lHvm*6HZlcX zwcs_d*SFpKXRo(IfNbQ}iFYm355kdcbN%tH5J0EX9*7^OKo!t*L(0_(FRHIlZ}jN?Zz?We(-H=FFAr_0fUs=fIDOW2Dw|h0CuL=w&H4;h6)e1%;IW}&bJbPem zXGH+s7Q6KNHj%L6LO5!jG`yzs2e7uYB1i9SR$n%Gv#7f5!$$k{vwtxF0PmhRL#qpj zZCfD#1x5_#^!bse7j8Z^WLmjByZGNho6XNt+Xv?Q3nC-yv`9KN=Kufz m4rN$LW=%~1DgXcg2mk;800000(o>TF0000Px)(@8`@RCt{2Tfd9jNEH5jcXnhHv@#|V2Rap3NCdVDUfiU-ZkzlO*WO=q?fnsH z(p{Nm$&zYev5OSKU@S1J6%kf;Idp~h&5mbfSu^8Nj$=PC`aR#%)69Es<~;+?ct&g3 z_DQ94{lCcnlZqhI>3Nl9DO}eBZ7(i9^imu zuD7!lubY4ge(51V-EOg%vvWZZ!F4^X(nMMSRsOp3D*VzzAW5#7*8lpkV&qA3ElsWh z;un9a{8EO)9r+ai3@saZzGmkgXN*l*006R^l`&&T{3OGsEZCMH%P-Xf#Kx%ysFKTq z+81AbXxYmA2Or?IP6W1nQuPNGd@sZ*O>lo#q9|^A`|j646F(_HhrjU#cjQ-bG+{<( zl_rRz31;(4+~1Y#zW%^s=Y22SKI?jz%`df-&;@_v5a7uPS(ajG**HCY%YH-4uDvgg zCK9hJ$L}~}^amCkXRO74&<&EsCjzp%JYg8V1_0)Uc;Bpxef+%D*Wo{?fZ6;K0C0a- z!g0n-7@mZVhn9`SV$KB7?Ey{vJaqUE+5ob!dA^3@jM+8}Uo+w)xqfmT05)ZzZ3Fi4 zQ~QUmE875f%=jZtvK@b6W{0g)Uf@tTyJYU22!X2wD`|?fv^pdny~C zuIs^Z#&Dc5b2GqJvqX~T>zzQPC~kZ7jIJ#>#7_a44*x+LKpM{Tbrl2=R%!Ai`Wjj` zR%wDDh_G19D|+S_FwMVreDLG%K>)T-K?s3@5m9KmreX)W;&1E$-Dm)@oaB=Yg!1k*b#cj{FPgv|dot^^#-oO9z z=$@c1G#2>*`Ov$y5#(Q71f8RMOrnYZn3J$)G(mNd!z5H?Qt|@-Cn(Pa#B}s*_NlY_ zfI5EF#H_LcM3)oCXH{29h~u+Lu$gQW8MT1$83Iy{=m|nfJrN0Hv810w7A&qyX*l3N` zJ$6iT$)@63yFoEuFV+cs4~Vr1Dm4jGJ%HCZu$z_Hlm&b*>|_W~ikx_<9)M(&nHWji z03s6e^dyiw@+(u>A-+U-g~V)Q}Iw(Th|h!ChNE|*_ATN8ZXs*X{cpd>WK1iZWH;_Hht z&_2ncB7@d~2)Q29Y4JJ`r*2(>@(}2%CZGxX>IGz=qyT;*lw~QtecPZgED`Ph2uk9s*t01T;ZM7Hu!!x*ooM&2*cQhHanVx=H#g^AW5$A`SagK zy}_F|zf~0V@hd-6FCg2VvI6*HQbt)8xH0SwM<7P*K3YpSXDG(F`X{00000 LNkvXXu0mjflDhzG literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png b/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e2dc6b1445d165fbde420f75310b326427d8a705 GIT binary patch literal 739 zcmV<90v!E`P)Px%ok>JNR9J=WSIvr}KoI`2y9tWmbPyClJmjG4-DMtPFL{x9qkWBegSiB941{=? zLn8!*uttzba&Ql!npXVl?B=!~h+1}aeN|mm-2(ri0K<5x|K@uazCA+Z_4Q|+=NTBY zLHEt(efG#)UsM&s@JFYYee!=wV7}1AGh=q+-u^xn%1c0DPm);3JTCxaHqwkM6Hs0P z&iBIWUteoMiu1j)aR5+C9JX|70MIo9MR5{x)3k7@N&rCqJ5`!fDFW@uDFS`pr(jfp zyp|0Z#!Ee4XmD&FX~uE8Rw&E!tZ)3o1lZE4!yrPQX8?dS;|PNYhj@$IwG!jz3r)x! z+rR5F8;5v1N@B1IWaET9&!B4t!XOed&i9?;!XUzC^FCx^ybLMh$pB-vC`E$re+K|j zhH`Hh!zh76yafQ~ij#;25im`wb8MRN!9*O40An^x(}HPQqRar` zQk5u*lenk}0YF)vXQVSF7e;e{JS~b-O&;l*(J-oO2GWef^8zGET+7iJ!{8FgYcIFn z`9f>t#ic46eL*I0smj467>odw7jUn2^13Sm^0TZrmWYE9kl*ErsX9#45;;I6Cle(+ z6oIyq?yhPoyD*3v+i$yLs%%ORoe2R5FWcU#Vlsi_@pE>m%Eq#YGeDk+?)TL5006Pu zwT;Pg6(}vi?OJu7`$#62;#4R_!1DrxK?KM4g|XYUf@Av#g9x4%JeL4LZc1J6Pa`na z+f~j1$^_Qyx7u}Ay~l6P_i)`6*6TN=KcvYe Date: Thu, 4 Apr 2024 21:10:02 +0300 Subject: [PATCH 05/28] =?UTF-8?q?=D0=A1=D0=BF=D0=B0=D0=B2=D0=BD=D0=B5?= =?UTF-8?q?=D1=80=20=D0=B4=D1=80=D0=BE=D0=BD=D0=B0-=D0=B0=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D0=B3=D0=B0=20=D0=9A=D0=9F=D0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Drones/Drone-Antags/DroneAntag_Spawner.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml index 4e8ef423d4e..172b3c1368e 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml @@ -42,3 +42,19 @@ - type: ConditionalSpawner prototypes: - ADTDroneAntagMiner + +- type: entity + name: drone soldier spawner + suffix: IPC + id: ADTSpawnerDroneAntagIPC + parent: MarkerBase + components: + - type: Sprite + layers: + - sprite: ADT/Markers/job.rsi + state: green + - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + state: ipc_icon + - type: ConditionalSpawner + prototypes: + - ADTDroneAntagIPC From 4392888d643da317e715e8756e3483cd841af24f Mon Sep 17 00:00:00 2001 From: eddiedoesGIT Date: Sun, 7 Apr 2024 00:05:03 +0300 Subject: [PATCH 06/28] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D0=BA=D0=B0?= =?UTF-8?q?=D0=BD=D0=B0=D0=BB=D0=B0=20=D1=81=D0=B2=D1=8F=D0=B7=D0=B8=20?= =?UTF-8?q?=D0=B4=D1=80=D0=BE=D0=BD=D0=BE=D0=B2-=D0=B0=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D0=B3=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 21 ++++++++++++++++--- .../Drones/Drone-Antags/DroneAntag_IPC.yml | 9 ++++++-- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 2a1060a0241..508fa42226b 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -229,9 +229,14 @@ allowed: - Stun - type: EncryptionKeyHolder - keySlots: 2 + keySlots: 5 examineWhileLocked: false keysExtractionMethod: Cutting + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeyDroneAntag + - EncryptionKeyCommon - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter channels: @@ -382,9 +387,14 @@ allowed: - Stun - type: EncryptionKeyHolder - keySlots: 2 + keySlots: 5 examineWhileLocked: false keysExtractionMethod: Cutting + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeyDroneAntag + - EncryptionKeyCommon - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter channels: @@ -536,9 +546,14 @@ allowed: - Stun - type: EncryptionKeyHolder - keySlots: 2 + keySlots: 5 examineWhileLocked: false keysExtractionMethod: Cutting + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeyDroneAntag + - EncryptionKeyCommon - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter channels: diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 954621567df..154904a19c8 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -458,7 +458,7 @@ implants: - SyndUniversalTranslatorImplanter - type: Repairable - doAfterDelay: 5 # was 18 + doAfterDelay: 5 damage: types: Blunt: -20 @@ -521,9 +521,14 @@ # layoutId: IPC # - type: WiresPanel - type: EncryptionKeyHolder - keySlots: 2 + keySlots: 5 examineWhileLocked: false keysExtractionMethod: Cutting + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeyDroneAntag + - EncryptionKeyCommon - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter channels: From 9977da618a1af537aaca32b850590ef991f40b61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schr=C3=B6dinger?= <132720404+Schrodinger71@users.noreply.github.com> Date: Sun, 7 Apr 2024 01:21:00 +0300 Subject: [PATCH 07/28] Fix YAML Validator --- Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 154904a19c8..114434db3c3 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -583,7 +583,7 @@ Slash: 0.35 Piercing: 0.45 Heat: 0.20 - Explosive: 0.25 + #Explosive: 0.25 Structural: 0 # zap Shock: 0.5 From e81491129eb3c2f50e7b4103f779c51fa462336e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schr=C3=B6dinger?= <132720404+Schrodinger71@users.noreply.github.com> Date: Sun, 7 Apr 2024 01:40:31 +0300 Subject: [PATCH 08/28] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D1=86=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=83=20=D0=B4=D1=80=D0=BE=D0=BD=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 508fa42226b..08793e0b2e9 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -320,7 +320,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 750 + price: 300 # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -478,7 +478,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 750 + price: 400 # Frontier - languages mechanic - type: LanguageSpeaker speaks: From 5a40f1d7e84dccecd24fbd4dd0d896c5dca3a478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schr=C3=B6dinger?= <132720404+Schrodinger71@users.noreply.github.com> Date: Sun, 7 Apr 2024 01:46:14 +0300 Subject: [PATCH 09/28] =?UTF-8?q?=D0=A1=D1=82=D0=B0=D0=B2=D0=B8=D0=BC=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D0=B1=D0=BD=D1=83=D1=8E=20=D1=86=D0=B5=D0=BD?= =?UTF-8?q?=D1=83=20=D0=9A=D0=9F=D0=91=20=D0=B0=D0=BD=D1=82=D0=B0=D0=B3?= =?UTF-8?q?=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 114434db3c3..2517fbb6dd7 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -573,6 +573,8 @@ tallscale: 1.1 short: true shortscale: 0.9 + - type: StaticPrice + price: 10 # damage modifier set From 75ab831427bb538eb5397987a6b0362ce689cc2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schr=C3=B6dinger?= <132720404+Schrodinger71@users.noreply.github.com> Date: Sun, 7 Apr 2024 01:56:56 +0300 Subject: [PATCH 10/28] Update DroneAntag.yml --- Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 08793e0b2e9..c07576a562e 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -320,7 +320,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 300 + price: 1275 # Frontier - languages mechanic - type: LanguageSpeaker speaks: @@ -478,7 +478,7 @@ - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 400 + price: 1275 # Frontier - languages mechanic - type: LanguageSpeaker speaks: From 0b4ed5c8a997799f9e03979e53dc6c1e1d101ef5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schr=C3=B6dinger?= <132720404+Schrodinger71@users.noreply.github.com> Date: Sun, 7 Apr 2024 01:57:58 +0300 Subject: [PATCH 11/28] Update DroneAntag_IPC.yml --- Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 2517fbb6dd7..754aaf02c0a 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -574,7 +574,7 @@ short: true shortscale: 0.9 - type: StaticPrice - price: 10 + price: 2525 # damage modifier set From 6629bae9250c2f47ac66fed1ba71c38b1de52292 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 7 Aug 2024 19:56:16 +0300 Subject: [PATCH 12/28] fix drones --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 12 ++++---- .../Drones/Drone-Antags/DroneAntag_IPC.yml | 9 +++--- .../Drone-Antags/DroneAntag_Spawner.yml | 8 +++--- .../ertleader_cyb.rsi/equipped-BACKPACK.png | Bin 0 -> 109 bytes .../Clothing/Back/ertleader_cyb.rsi/icon.png | Bin 0 -> 400 bytes .../Back/ertleader_cyb.rsi/inhand-left.png | Bin 0 -> 701 bytes .../Back/ertleader_cyb.rsi/inhand-right.png | Bin 0 -> 762 bytes .../Clothing/Back/ertleader_cyb.rsi/meta.json | 26 ++++++++++++++++++ 8 files changed, 40 insertions(+), 15 deletions(-) create mode 100644 Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/equipped-BACKPACK.png create mode 100644 Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/meta.json diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index c07576a562e..0eec50986ac 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -350,8 +350,8 @@ doAfterDelay: 5 - type: UserInterface interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface + enum.StrippingUiKey.Key: + type: StrippableBoundUserInterface - type: Inventory templateId: droneantaginventory @@ -508,8 +508,8 @@ doAfterDelay: 5 - type: UserInterface interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface + enum.StrippingUiKey.Key: + type: StrippableBoundUserInterface - type: Inventory templateId: droneantaginventory @@ -667,8 +667,8 @@ doAfterDelay: 5 - type: UserInterface interfaces: - - key: enum.StrippingUiKey.Key - type: StrippableBoundUserInterface + enum.StrippingUiKey.Key: + type: StrippableBoundUserInterface - type: Inventory templateId: droneantaginventory diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 754aaf02c0a..b87045f964a 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -270,11 +270,11 @@ - type: Strippable - type: UserInterface interfaces: - - key: enum.VoiceMaskUIKey.Key + enum.VoiceMaskUIKey.Key: type: VoiceMaskBoundUserInterface - - key: enum.HumanoidMarkingModifierKey.Key + enum.HumanoidMarkingModifierKey.Key: type: HumanoidMarkingModifierBoundUserInterface - - key: enum.StrippingUiKey.Key + enum.StrippingUiKey.Key: type: StrippableBoundUserInterface - type: StandingState - type: CanEscapeInventory @@ -340,6 +340,7 @@ allowed: - Stun - type: Blindable + #- type: ComplexInteraction - type: entity id: ADTDroneAntagIPC @@ -434,7 +435,6 @@ Alive: BorgHealth Critical: BorgCrit Dead: BorgDead - allowRevives: true # Для воскрешения достаточно починить урон. - ss220. - type: NpcFactionMember factions: @@ -575,7 +575,6 @@ shortscale: 0.9 - type: StaticPrice price: 2525 - # damage modifier set - type: damageModifierSet diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml index 172b3c1368e..9a9bb0c0986 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml @@ -5,7 +5,7 @@ components: - type: Sprite layers: - - sprite: ADT/Markers/job.rsi + - sprite: ADT/Markers/jobs.rsi state: green - sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi state: mineshell @@ -20,7 +20,7 @@ components: - type: Sprite layers: - - sprite: ADT/Markers/job.rsi + - sprite: ADT/Markers/jobs.rsi state: green - sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi state: engshell @@ -35,7 +35,7 @@ components: - type: Sprite layers: - - sprite: ADT/Markers/job.rsi + - sprite: ADT/Markers/jobs.rsi state: green - sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi state: chargeshell @@ -51,7 +51,7 @@ components: - type: Sprite layers: - - sprite: ADT/Markers/job.rsi + - sprite: ADT/Markers/jobs.rsi state: green - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi state: ipc_icon diff --git a/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/equipped-BACKPACK.png b/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000000000000000000000000000000000..2975c479be7566a6c59a7aca4e20778aa850feb7 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|)ID7sLn`LH rJ;=xlwOr9UK@K`#+rw1POb(`njxgN@xNA?@buF literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/icon.png b/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d560a0d5b93233f1e0a1fc84bc6991759e9f5582 GIT binary patch literal 400 zcmV;B0dM|^P)GhjqwGZ`x>8zBiWsf3l6g{UJ0R9wo^ z(n=f^kOayF#Y@}~0!k_^E-o$V2m#JXDoQF!(-CGUX-;x?nyH9Tq2Z)iSgC|$s8-7& zcc&$dZ~@MlGrW|vJRA}3a#876wW0+fz$K#M;pO2ua{^psp%YNR#Y+KIz-tMT)16ut uE@^Q=a_LN$juy|E2$wQ2DFFe)paK9WT_woKl9k&40000Px%cS%G+RCt{2+A(X}Ko|z#*Co(Fw-mz($>5=&skyqF^$@|`QVMrNs6m}1>@+cw`$;75J&SC~NO$MEPsVxy#u#IaF~%5Uj4{Su zjf;zmqU~$EYx@Gbj_J_p`DKwLNoxafLUp1vO$%!+0O0-T3m(_E)fNDxl#R}Jc6D9g z&rkFRLu?-;wANHj-9s_}X_{8wkdzW9gCRbAzQM1}4{RSK%7LjXNs?mw{TuQy#P9nB zMH62{HUq4+2!a6Kdwks70h>GY0o;3!AP8WsMV{xi&*!~I9LHF#RuDo^HS-@N1F&2! zdr=e>&N&DnkY!ml7y#g$0|3NvTs}N^MV{vnLO^TXqiE-I$cms40zwEl=ir>f zWHPB-DeKvS@bzJ~Je=t1id0-t+vk3jc5TCx@ z9DPl)8PH{@fijCgx&*oiHBe^}$d-WCx@U|*7oi5qECT5a=ql6z>=(K+i%{-wl1U;h zf?b3fsIv%U1JGrtfijCgIs>{0H7KPp8jTKqrb!mzO+L1sPNzkdWmO#r!w|+80I1e~ j-6H%Z2cX1R1Ok5n3x`|)PE`fr00000NkvXXu0mjfhMF+k literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/Back/ertleader_cyb.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..ac2c36bf285a9ec648f2671495fa0643c62799f7 GIT binary patch literal 762 zcmVPx%v`IukRCt{2+A(X}Koke?zl)*6-BJv9LWMSTdD@lRy^-Gz2OTWT=d^go17;7_QSDi7gqWR$@849~j4yqPu&(cLLu72qAh5czZxV`y>>2CoS zm?pZuzIKDOj4|N*7XScb3`!{*MbTUk3THr;WnhfK7=!-J1#okL4uIGgFvgH&8ImM< zw1F%uilUZM%I0|v0FY9aUON|n^Yio8#>R%t^BkOWgkk7|0RZl%K@dDf-)rN7AcR01 z$Cykeg(>i&=pg4DoO9%Pjy%t?ySwZEcITQr17_{)?3A7>Oab8jLN^+Xz&ZEFo4gL( z<-W8yj!UnZn*mBG3joF#2qB=ghA{?OYX~8HDl|O>94RHFlzv>Z3RA!h)EI*_O`)|$ znx_8Px^T0$-|v?`y5~|rYmFcXaCUZ9dSfBP!t+hx9(z|;SEbj?&4AO>)0SJ{7-RR& zxzAaaq3D^qjusB0C~uz2zzHFQ5JCtcgb+dqA!KP!Q8Q3?8>L%gvzk;huyt^3UAxQv zN?o`!G;6kIpwsQ)_4^Zay1geI_}+(47JzTJj Date: Wed, 7 Aug 2024 20:33:32 +0300 Subject: [PATCH 13/28] fix drones x2 --- .../ADT/Drones/Drone-Antags/DroneAntag.yml | 12 ++++-------- .../ADT/Drones/Drone-Antags/DroneAntag_IPC.yml | 4 ++-- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml index 0eec50986ac..24ad23aa91d 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml @@ -97,7 +97,6 @@ - Common - type: ZombieImmune - type: Repairable - fuelcost: 15 doAfterDelay: 3 allowSelfRepair: true # - type: PowerCellSlot @@ -181,7 +180,7 @@ - type: StandingState - type: Tag tags: - - ShoesRequiredStepTriggerImmune + # - ShoesRequiredStepTriggerImmune # - DoorBumpOpener - CanPilot - CannotSuicide @@ -317,7 +316,7 @@ autoRot: true - type: Tag tags: - - ShoesRequiredStepTriggerImmune + # - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice price: 1275 @@ -346,7 +345,6 @@ speechSounds: Pai - type: ZombieImmune - type: Repairable - fuelcost: 15 doAfterDelay: 5 - type: UserInterface interfaces: @@ -475,7 +473,7 @@ autoRot: true - type: Tag tags: - - ShoesRequiredStepTriggerImmune + # - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice price: 1275 @@ -504,7 +502,6 @@ speechSounds: Pai - type: ZombieImmune - type: Repairable - fuelcost: 15 doAfterDelay: 5 - type: UserInterface interfaces: @@ -634,7 +631,7 @@ autoRot: true - type: Tag tags: - - ShoesRequiredStepTriggerImmune + # - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice price: 750 @@ -663,7 +660,6 @@ speechSounds: Pai - type: ZombieImmune - type: Repairable - fuelcost: 15 doAfterDelay: 5 - type: UserInterface interfaces: diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index b87045f964a..265cf095029 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -563,8 +563,8 @@ - SolCommon - type: Tag tags: - - ChangelingBlacklist - - ShoesRequiredStepTriggerImmune + # - ChangelingBlacklist + # - ShoesRequiredStepTriggerImmune - CanPilot - FootstepSound - DoorBumpOpener From 9d92f2e7c44fc94479fb39990e3b1fb3b423a35a Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 7 Aug 2024 21:42:32 +0300 Subject: [PATCH 14/28] fix drones x3 --- .../Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml index 265cf095029..630a3b3a686 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -340,7 +340,6 @@ allowed: - Stun - type: Blindable - #- type: ComplexInteraction - type: entity id: ADTDroneAntagIPC @@ -456,7 +455,7 @@ force: true - type: AutoImplant implants: - - SyndUniversalTranslatorImplanter + - SyndUniversalTranslatorImplant - type: Repairable doAfterDelay: 5 damage: From ddaf4571adc6a5bcab64c17dd0e2143763c9399f Mon Sep 17 00:00:00 2001 From: Nezer <115577759+Lonkuk@users.noreply.github.com> Date: Wed, 3 Jul 2024 10:02:33 +0300 Subject: [PATCH 15/28] =?UTF-8?q?=D0=97=D0=90=D0=9A=D0=90=D0=97=20SPACE=20?= =?UTF-8?q?SEC=20=D0=BE=D1=82=20ilja=F0=9F=A4=A0=20(#755)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Добавление основных прототипов SPACE SEC * fixes * changes syndicate and nanotrazen fractions * fixes_2 * Fix ai_factions.yml * Fix Locale/ru-RU/ --------- Co-authored-by: Schrödinger <132720404+Schrodinger71@users.noreply.github.com> --- .../ADT/Entities/Clothing/Ears/headsets.ftl | 4 + .../Clothing/Head/hardsuits-helmets.ftl | 6 + .../ru-RU/ADT/Entities/Clothing/Neck/misc.ftl | 2 + .../Clothing/OuterClothing/hardsuits.ftl | 6 + .../Entities/Clothing/Uniforms/Jumpsuit.ftl | 10 + .../ADT/Entities/Mobs/player/humanoid.ftl | 10 + .../Objects/Device/encryption_keys.ftl | 2 + .../Objects/Misc/identification_cards.ftl | 11 + .../Entities/Objects/Weapons/Guns/turrets.ftl | 2 + .../Structures/Doors/Airlock/access.ftl | 46 ++++ .../Structures/Doors/Airlock/airlock.ftl | 4 + .../Structures/Doors/Airlock/shuttle.ftl | 3 + .../Machines/Computers/computers.ftl | 3 + .../Structures/Wallmount/Signs/posters.ftl | 2 + .../Structures/Walls/space_sec_walls.ftl | 4 + .../Structures/Windows/space_sec_window.ftl | 4 + .../Locale/ru-RU/ADT/access/SpaceSec.ftl | 6 + Resources/Prototypes/ADT/Access/SpaceSec.yml | 23 ++ .../ADT/Entities/Clothing/Ears/headsets.yml | 35 +++ .../Clothing/Head/hardsuit-helmets.yml | 79 +++++++ .../ADT/Entities/Clothing/Neck/misc.yml | 8 + .../Clothing/OuterClothing/hardsuits.yml | 99 +++++++++ .../Entities/Clothing/Uniforms/Jumpsuit.yml | 55 +++++ .../ADT/Entities/Mobs/player/humanoid.yml | 210 ++++++++++++++++++ .../Objects/Device/encryption_keys.yml | 15 ++ .../Objects/Misc/identification_cards.yml | 101 +++++++++ .../Entities/Objects/Weapons/Guns/turrets.yml | 8 + .../Structures/Doors/Airlock/access.yml | 131 +++++++++++ .../Structures/Doors/Airlock/airlocks.yml | 28 +++ .../Structures/Doors/Airlock/shuttle.yml | 41 ++++ .../Machines/Computers/computers.yml | 67 ++++++ .../Structures/Wallmount/Signs/posters.yml | 10 + .../Structures/Walls/space_sec_wall.yml | 59 +++++ .../Structures/Windows/space_sec_window.yml | 90 ++++++++ .../ADT/StartingGear/SpaceSec/Cadet.yml | 16 ++ .../ADT/StartingGear/SpaceSec/Commander.yml | 16 ++ .../ADT/StartingGear/SpaceSec/Officer.yml | 16 ++ .../ADT/StartingGear/SpaceSec/Pilot.yml | 16 ++ .../ADT/StartingGear/SpaceSec/Service.yml | 13 ++ .../Prototypes/ADT/StatusEffects/job.yml | 39 +++- Resources/Prototypes/ADT/ai_faction.yml | 33 +++ Resources/Prototypes/ADT/radio_channels.yml | 8 + Resources/Prototypes/ai_factions.yml | 2 + .../space_sec_headset.rsi/equipped-EARS.png | Bin 0 -> 141 bytes .../Headsets/space_sec_headset.rsi/icon.png | Bin 0 -> 297 bytes .../Headsets/space_sec_headset.rsi/meta.json | 18 ++ .../equipped-EARS.png | Bin 0 -> 383 bytes .../space_sec_headset_full.rsi/icon.png | Bin 0 -> 473 bytes .../space_sec_headset_full.rsi/meta.json | 18 ++ .../equipped-HELMET.png | Bin 0 -> 713 bytes .../icon.png | Bin 0 -> 766 bytes .../meta.json | 18 ++ .../equipped-HELMET.png | Bin 0 -> 757 bytes .../icon.png | Bin 0 -> 728 bytes .../meta.json | 18 ++ .../equipped-HELMET.png | Bin 0 -> 718 bytes .../space_sec_pilot_hardsuithead.rsi/icon.png | Bin 0 -> 745 bytes .../meta.json | 18 ++ .../space_sec_token.rsi/equipped-NECK.png | Bin 0 -> 223 bytes .../Neck/space_sec_token.rsi/icon.png | Bin 0 -> 320 bytes .../Neck/space_sec_token.rsi/meta.json | 18 ++ .../equipped-OUTERCLOTHING.png | Bin 0 -> 1466 bytes .../space_sec_commander_hardsuit.rsi/icon.png | Bin 0 -> 533 bytes .../inhand-left.png | Bin 0 -> 449 bytes .../inhand-right.png | Bin 0 -> 446 bytes .../meta.json | 26 +++ .../equipped-OUTERCLOTHING.png | Bin 0 -> 1621 bytes .../space_sec_officer_hardsuit.rsi/icon.png | Bin 0 -> 524 bytes .../inhand-left.png | Bin 0 -> 449 bytes .../inhand-right.png | Bin 0 -> 446 bytes .../space_sec_officer_hardsuit.rsi/meta.json | 26 +++ .../equipped-OUTERCLOTHING.png | Bin 0 -> 1542 bytes .../space_sec_pilot_hardsuit.rsi/icon.png | Bin 0 -> 534 bytes .../inhand-left.png | Bin 0 -> 449 bytes .../inhand-right.png | Bin 0 -> 446 bytes .../space_sec_pilot_hardsuit.rsi/meta.json | 26 +++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1152 bytes .../Jumpsuit/space_sec_cadet.rsi/icon.png | Bin 0 -> 413 bytes .../space_sec_cadet.rsi/inhand-left.png | Bin 0 -> 383 bytes .../space_sec_cadet.rsi/inhand-right.png | Bin 0 -> 400 bytes .../Jumpsuit/space_sec_cadet.rsi/meta.json | 26 +++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1457 bytes .../Jumpsuit/space_sec_commander.rsi/icon.png | Bin 0 -> 511 bytes .../space_sec_commander.rsi/inhand-left.png | Bin 0 -> 521 bytes .../space_sec_commander.rsi/inhand-right.png | Bin 0 -> 524 bytes .../space_sec_commander.rsi/meta.json | 26 +++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1292 bytes .../Jumpsuit/space_sec_officer.rsi/icon.png | Bin 0 -> 402 bytes .../space_sec_officer.rsi/inhand-left.png | Bin 0 -> 432 bytes .../space_sec_officer.rsi/inhand-right.png | Bin 0 -> 424 bytes .../Jumpsuit/space_sec_officer.rsi/meta.json | 26 +++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1555 bytes .../Jumpsuit/space_sec_pilot.rsi/icon.png | Bin 0 -> 436 bytes .../space_sec_pilot.rsi/inhand-left.png | Bin 0 -> 444 bytes .../space_sec_pilot.rsi/inhand-right.png | Bin 0 -> 466 bytes .../Jumpsuit/space_sec_pilot.rsi/meta.json | 26 +++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1503 bytes .../Jumpsuit/space_sec_service.rsi/icon.png | Bin 0 -> 403 bytes .../space_sec_service.rsi/inhand-left.png | Bin 0 -> 499 bytes .../space_sec_service.rsi/inhand-right.png | Bin 0 -> 514 bytes .../Jumpsuit/space_sec_service.rsi/meta.json | 26 +++ .../ADTSpaceSecCadetStatusIcon.png | Bin 0 -> 188 bytes .../ADTSpaceSecCommanderStatusIcon.png | Bin 0 -> 185 bytes .../ADTSpaceSecOfficerStatusIcon.png | Bin 0 -> 208 bytes .../ADTSpaceSecPilotStatusIcon.png | Bin 0 -> 194 bytes .../ADTSpaceSecServiceStatusIcon.png | Bin 0 -> 216 bytes .../Misc/space_sec_icons.rsi/meta.json | 26 +++ .../space_sec_ids.rsi/default-inhand-left.png | Bin 0 -> 177 bytes .../default-inhand-right.png | Bin 0 -> 179 bytes .../Misc/space_sec_ids.rsi/default.png | Bin 0 -> 355 bytes .../Misc/space_sec_ids.rsi/id-cadet.png | Bin 0 -> 222 bytes .../Misc/space_sec_ids.rsi/id-commander.png | Bin 0 -> 629 bytes .../Misc/space_sec_ids.rsi/id-officer.png | Bin 0 -> 630 bytes .../Misc/space_sec_ids.rsi/id-pilot.png | Bin 0 -> 240 bytes .../Misc/space_sec_ids.rsi/id-service.png | Bin 0 -> 644 bytes .../Objects/Misc/space_sec_ids.rsi/meta.json | 37 +++ .../Airlocks/Glass/space_sec.rsi/assembly.png | Bin 0 -> 702 bytes .../Glass/space_sec.rsi/bolted_open_unlit.png | Bin 0 -> 178 bytes .../Glass/space_sec.rsi/bolted_unlit.png | Bin 0 -> 202 bytes .../Airlocks/Glass/space_sec.rsi/closed.png | Bin 0 -> 730 bytes .../Glass/space_sec.rsi/closed_unlit.png | Bin 0 -> 212 bytes .../Airlocks/Glass/space_sec.rsi/closing.png | Bin 0 -> 1949 bytes .../Glass/space_sec.rsi/closing_unlit.png | Bin 0 -> 634 bytes .../Glass/space_sec.rsi/deny_unlit.png | Bin 0 -> 481 bytes .../space_sec.rsi/emergency_open_unlit.png | Bin 0 -> 206 bytes .../Glass/space_sec.rsi/emergency_unlit.png | Bin 0 -> 246 bytes .../Airlocks/Glass/space_sec.rsi/meta.json | 197 ++++++++++++++++ .../Airlocks/Glass/space_sec.rsi/open.png | Bin 0 -> 809 bytes .../Glass/space_sec.rsi/open_unlit.png | Bin 0 -> 173 bytes .../Airlocks/Glass/space_sec.rsi/opening.png | Bin 0 -> 5842 bytes .../Glass/space_sec.rsi/opening_unlit.png | Bin 0 -> 675 bytes .../Glass/space_sec.rsi/panel_closed.png | Bin 0 -> 120 bytes .../Glass/space_sec.rsi/panel_closing.png | Bin 0 -> 461 bytes .../Glass/space_sec.rsi/panel_open.png | Bin 0 -> 234 bytes .../Glass/space_sec.rsi/panel_opening.png | Bin 0 -> 471 bytes .../Airlocks/Glass/space_sec.rsi/sparks.png | Bin 0 -> 1051 bytes .../Glass/space_sec.rsi/sparks_broken.png | Bin 0 -> 575 bytes .../Glass/space_sec.rsi/sparks_damaged.png | Bin 0 -> 504 bytes .../Glass/space_sec.rsi/sparks_open.png | Bin 0 -> 439 bytes .../Airlocks/Glass/space_sec.rsi/welded.png | Bin 0 -> 326 bytes .../Glass/space_sec_shuttle.rsi/assembly.png | Bin 0 -> 6198 bytes .../space_sec_shuttle.rsi/bolted_unlit.png | Bin 0 -> 4972 bytes .../Glass/space_sec_shuttle.rsi/closed.png | Bin 0 -> 6304 bytes .../space_sec_shuttle.rsi/closed_unlit.png | Bin 0 -> 5035 bytes .../Glass/space_sec_shuttle.rsi/closing.png | Bin 0 -> 8106 bytes .../space_sec_shuttle.rsi/closing_unlit.png | Bin 0 -> 6610 bytes .../space_sec_shuttle.rsi/deny_unlit.png | Bin 0 -> 6524 bytes .../space_sec_shuttle.rsi/emergency_unlit.png | Bin 0 -> 5301 bytes .../Glass/space_sec_shuttle.rsi/meta.json | 149 +++++++++++++ .../Glass/space_sec_shuttle.rsi/open.png | Bin 0 -> 15680 bytes .../space_sec_shuttle.rsi/open_unlit.png | Bin 0 -> 120 bytes .../Glass/space_sec_shuttle.rsi/opening.png | Bin 0 -> 8320 bytes .../space_sec_shuttle.rsi/opening_unlit.png | Bin 0 -> 6610 bytes .../space_sec_shuttle.rsi/panel_closing.png | Bin 0 -> 6400 bytes .../space_sec_shuttle.rsi/panel_open.png | Bin 0 -> 5073 bytes .../space_sec_shuttle.rsi/panel_opening.png | Bin 0 -> 6183 bytes .../Glass/space_sec_shuttle.rsi/welded.png | Bin 0 -> 5638 bytes .../Standard/space_sec.rsi/assembly.png | Bin 0 -> 634 bytes .../space_sec.rsi/bolted_open_unlit.png | Bin 0 -> 178 bytes .../Standard/space_sec.rsi/bolted_unlit.png | Bin 0 -> 202 bytes .../Standard/space_sec.rsi/closed.png | Bin 0 -> 688 bytes .../Standard/space_sec.rsi/closed_unlit.png | Bin 0 -> 212 bytes .../Standard/space_sec.rsi/closing.png | Bin 0 -> 1868 bytes .../Standard/space_sec.rsi/closing_unlit.png | Bin 0 -> 634 bytes .../Standard/space_sec.rsi/deny_unlit.png | Bin 0 -> 481 bytes .../space_sec.rsi/emergency_open_unlit.png | Bin 0 -> 206 bytes .../space_sec.rsi/emergency_unlit.png | Bin 0 -> 246 bytes .../Airlocks/Standard/space_sec.rsi/meta.json | 197 ++++++++++++++++ .../Airlocks/Standard/space_sec.rsi/open.png | Bin 0 -> 798 bytes .../Standard/space_sec.rsi/open_unlit.png | Bin 0 -> 173 bytes .../Standard/space_sec.rsi/opening.png | Bin 0 -> 5784 bytes .../Standard/space_sec.rsi/opening_unlit.png | Bin 0 -> 675 bytes .../Standard/space_sec.rsi/panel_closed.png | Bin 0 -> 120 bytes .../Standard/space_sec.rsi/panel_closing.png | Bin 0 -> 461 bytes .../Standard/space_sec.rsi/panel_open.png | Bin 0 -> 234 bytes .../Standard/space_sec.rsi/panel_opening.png | Bin 0 -> 471 bytes .../Standard/space_sec.rsi/sparks.png | Bin 0 -> 1051 bytes .../Standard/space_sec.rsi/sparks_broken.png | Bin 0 -> 575 bytes .../Standard/space_sec.rsi/sparks_damaged.png | Bin 0 -> 504 bytes .../Standard/space_sec.rsi/sparks_open.png | Bin 0 -> 439 bytes .../Standard/space_sec.rsi/welded.png | Bin 0 -> 326 bytes .../Machines/space_sec_computer.rsi/id.png | Bin 0 -> 1575 bytes .../Machines/space_sec_computer.rsi/meta.json | 37 +++ .../Wallmounts/space_sec_poster.rsi/meta.json | 14 ++ .../space_sec_poster.rsi/poster_spacesec.png | Bin 0 -> 787 bytes .../Walls/space_sec_diagonal.rsi/meta.json | 17 ++ .../Walls/space_sec_diagonal.rsi/state0.png | Bin 0 -> 709 bytes .../Walls/space_sec_diagonal.rsi/state1.png | Bin 0 -> 645 bytes .../Walls/space_sec_wall.rsi/full.png | Bin 0 -> 812 bytes .../Walls/space_sec_wall.rsi/meta.json | 46 ++++ .../Walls/space_sec_wall.rsi/state0.png | Bin 0 -> 1065 bytes .../Walls/space_sec_wall.rsi/state1.png | Bin 0 -> 653 bytes .../Walls/space_sec_wall.rsi/state2.png | Bin 0 -> 1071 bytes .../Walls/space_sec_wall.rsi/state3.png | Bin 0 -> 632 bytes .../Walls/space_sec_wall.rsi/state4.png | Bin 0 -> 674 bytes .../Walls/space_sec_wall.rsi/state5.png | Bin 0 -> 834 bytes .../Walls/space_sec_wall.rsi/state6.png | Bin 0 -> 730 bytes .../Walls/space_sec_wall.rsi/state7.png | Bin 0 -> 389 bytes .../Windows/space_sec_diagonal.rsi/meta.json | 17 ++ .../Windows/space_sec_diagonal.rsi/state0.png | Bin 0 -> 490 bytes .../Windows/space_sec_diagonal.rsi/state1.png | Bin 0 -> 437 bytes .../Windows/space_sec_window.rsi/full.png | Bin 0 -> 716 bytes .../Windows/space_sec_window.rsi/meta.json | 46 ++++ .../Windows/space_sec_window.rsi/swindow0.png | Bin 0 -> 1200 bytes .../Windows/space_sec_window.rsi/swindow1.png | Bin 0 -> 1123 bytes .../Windows/space_sec_window.rsi/swindow2.png | Bin 0 -> 1200 bytes .../Windows/space_sec_window.rsi/swindow3.png | Bin 0 -> 1123 bytes .../Windows/space_sec_window.rsi/swindow4.png | Bin 0 -> 1138 bytes .../Windows/space_sec_window.rsi/swindow5.png | Bin 0 -> 1212 bytes .../Windows/space_sec_window.rsi/swindow6.png | Bin 0 -> 1138 bytes .../Windows/space_sec_window.rsi/swindow7.png | Bin 0 -> 922 bytes 211 files changed, 2441 insertions(+), 1 deletion(-) create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl create mode 100644 Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl create mode 100644 Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl create mode 100644 Resources/Prototypes/ADT/Access/SpaceSec.yml create mode 100644 Resources/Prototypes/ADT/Entities/Clothing/Neck/misc.yml create mode 100644 Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml create mode 100644 Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml create mode 100644 Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml create mode 100644 Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml create mode 100644 Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/airlocks.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/shuttle.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml create mode 100644 Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml create mode 100644 Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml create mode 100644 Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml create mode 100644 Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml create mode 100644 Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml create mode 100644 Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml create mode 100644 Resources/Prototypes/ADT/ai_faction.yml create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/equipped-EARS.png create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/equipped-EARS.png create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi/equipped-HELMET.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/equipped-HELMET.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/equipped-HELMET.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/equipped-NECK.png create mode 100644 Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/equipped-OUTERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/equipped-OUTERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/equipped-OUTERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/meta.json create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/icon.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/meta.json create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecCadetStatusIcon.png create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecCommanderStatusIcon.png create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecOfficerStatusIcon.png create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecPilotStatusIcon.png create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecServiceStatusIcon.png create mode 100644 Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/meta.json create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-cadet.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-commander.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-officer.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-pilot.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-service.png create mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/assembly.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/bolted_open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/bolted_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closed.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closed_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closing_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/deny_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/opening_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_closed.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks_broken.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks_damaged.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks_open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/welded.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/assembly.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/bolted_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/deny_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/emergency_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/opening_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/welded.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/assembly.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/closed.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/closed_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/closing_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/deny_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/open_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/opening_unlit.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_closed.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_closing.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_opening.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks_broken.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks_damaged.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks_open.png create mode 100644 Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/welded.png create mode 100644 Resources/Textures/ADT/Structures/Machines/space_sec_computer.rsi/id.png create mode 100644 Resources/Textures/ADT/Structures/Machines/space_sec_computer.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/poster_spacesec.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_diagonal.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_diagonal.rsi/state0.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_diagonal.rsi/state1.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/full.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state0.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state1.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state2.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state3.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state4.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state5.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state6.png create mode 100644 Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state7.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/state0.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/state1.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/full.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/meta.json create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow0.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow1.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow2.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow3.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow4.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow5.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow6.png create mode 100644 Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow7.png diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl new file mode 100644 index 00000000000..e22165a4f48 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl @@ -0,0 +1,4 @@ +ent-ADTSpaceSecClothingHeadset = гарнитура SPACE SEC + .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. +ent-ADTSpaceSecClothingHeadsetFull = полноразмерная гарнитура SPACE SEC + .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl new file mode 100644 index 00000000000..114381e4bf3 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl @@ -0,0 +1,6 @@ +ent-ADTSpaceSecPilotHelm = шлем скафандра пилота SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecOfficerHelm = шлем скафандра офицера SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecCommanderHelm = шлем скафандра камандира SPACE SEC + .desc = Для командира хранителей безопасности среди звезд. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl new file mode 100644 index 00000000000..bc32b42f66e --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl @@ -0,0 +1,2 @@ +ent-ADTSpaceSecToken = жетон сотрудника SPACE SEC + .desc = Жетон показывающий вашу принадлежность к корпорации SPACE SEC. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl new file mode 100644 index 00000000000..7841d9876e4 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl @@ -0,0 +1,6 @@ +ent-ADTSpaceSecPilotHardsuit = скафандр пилота SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecOfficerHardsuit = скафандр офицера SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecCommanderHardsuit = скафандр командира SPACE SEC + .desc = Для командира хранителей безопасности среди звезд. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl new file mode 100644 index 00000000000..74e7c39c039 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl @@ -0,0 +1,10 @@ +ent-ADTSpaceSecUniformCadet = комбинезон кадета SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformPilot = комбинезон пилота SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformCommander = комбинезон командира SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformService = комбинезон сотрудника SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformOfficer = комбинезон офицера SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl b/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl new file mode 100644 index 00000000000..7c3f1756727 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl @@ -0,0 +1,10 @@ +ent-ADTSpaceSecCadet = кадет SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC случайный +ent-ADTSpaceSecOfficer = офицер SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC случайный +ent-ADTSpaceSecPilot = пилот SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC случайный +ent-ADTSpaceSecCommander = командир SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC случайный +ent-ADTSpaceSecService = сотрудник SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC случайный diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl b/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl new file mode 100644 index 00000000000..420f7fc143c --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl @@ -0,0 +1,2 @@ +ent-ADTEncryptionKeySpaceSec = ключ шифрования SPACE SEC + .desc = Ключ шифрования, используемый малоизвестной корпорацией. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl b/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl index 4f4bf7cf876..3f7082814c3 100644 --- a/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl +++ b/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl @@ -3,3 +3,14 @@ ent-ADTPathologistIDCard = ID карта патологоанатома ent-ADTRoboticistIDCard = ID карта робототехника .desc = { ent-IDCardStandard.desc } + +ent-ADTSpaceSecCadetIDCard = ID карта кадета SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecOfficerIDCard = ID карта офицера SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecPilotIDCard = ID карта пилота SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecCommanderIDCard = ID карта командира SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecServiceIDCard = ID карта сотрудника SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl b/Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl new file mode 100644 index 00000000000..bf6ac29e57e --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl @@ -0,0 +1,2 @@ +ent-ADTWeaponTurretSpaceSec = баллистическая турель + .desc = Автоматическая турель с баллистическим пулеметом. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl new file mode 100644 index 00000000000..d352c973672 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl @@ -0,0 +1,46 @@ +ent-ADTSpaceSecAirlockOfficial = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Служебный +ent-ADTSpaceSecAirlockSecurity = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Служба безопасности +ent-ADTSpaceSecAirlockMaintence = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Техобслуживание +ent-ADTSpaceSecAirlockArmory = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Оруженый +ent-ADTSpaceSecAirlockCommand = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Командный + + +ent-ADTSpaceSecAirlockShuttle = стыковочный шлюз + .desc = Необходим для соединения двух космических кораблей вместе. + .suffix = Space Sec, Внешний +ent-ADTAirlockShuttleSpaceSecWhiteGlass = стыковочный шлюз + .desc = Необходим для соединения двух космических кораблей вместе. + .suffix = Space Sec, Внешний +ent-ADTAirlockShuttleSpaceSecWhite = стыковочный шлюз + .desc = Необходим для соединения двух космических кораблей вместе. + .suffix = Space Sec, Внешний +ent-ADTSpaceSecAirlockExternal = шлюз + .desc = Он открывается, он закрывается, он может раздавить вас, а за ним лишь космос. Активируется вручную + .suffix = Space Sec, Внешний + + +ent-ADTSpaceSecGlassAirlockOfficial = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Служебный +ent-ADTSpaceSecGlassAirlockSecurity = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Служба безопасности +ent-ADTSpaceSecGlassAirlockMaintence = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Техобслуживание +ent-ADTSpaceSecGlassAirlockArmory = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Оруженый +ent-ADTSpaceSecGlassAirlockCommand = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. + .suffix = Space Sec, Командный \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl new file mode 100644 index 00000000000..47ef9f3d817 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl @@ -0,0 +1,4 @@ +ent-ADTSpaceSecAirlock = шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. +ent-ADTSpaceSecGlassAirlock = стеклянный шлюз + .desc = Он открывается, он закрывается, и он может вас раздавить. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl new file mode 100644 index 00000000000..7931e24009f --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl @@ -0,0 +1,3 @@ +ent-ADTSpaceSecAirlockGlassShuttle = стыковочный шлюз + .desc = Необходим для соединения двух космических кораблей вместе. + .suffix = Space Sec, Внешний \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl new file mode 100644 index 00000000000..efc7557bd90 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl @@ -0,0 +1,3 @@ +ent-ADTSpaceSecComputerId = консоль ID карт + .desc = Компьютер для программирования ID карт сотрудников SPACE SEC, для доступа к разным частям станции. + .suffix = Space Sec \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl new file mode 100644 index 00000000000..5ae91a51045 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl @@ -0,0 +1,2 @@ +ent-ADTPosterSpaceSec = логотип SPACE SEC + .desc = Это логотип корпорации SPACE SEC. diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl new file mode 100644 index 00000000000..3fa0eb83d8f --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl @@ -0,0 +1,4 @@ +ent-ADTSpaceSecWall = укреплённая стена + .desc = Удерживает воздух внутри, а дронов снаружи. +ent-ADTSpaceSecWallDiagonal = диагональная укреплённая стена + .desc = Удерживает воздух внутри, а дронов снаружи. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl b/Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl new file mode 100644 index 00000000000..f9e20ebfe2c --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl @@ -0,0 +1,4 @@ +ent-ADTSpaceSecWindow = закалённое окно + .desc = Смотри не заляпай. +ent-ADTSpaceSecWindowDiagonal = диагональное закалённое окно + .desc = Смотри не заляпай. diff --git a/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl b/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl new file mode 100644 index 00000000000..f61866de04c --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl @@ -0,0 +1,6 @@ +id-card-access-level-spacesec-official = Служебный SEC +id-card-access-level-spacesec-maintenance = Техобслуживание SEC +id-card-access-level-spacesec-external = Внешний SEC +id-card-access-level-spacesec-security = Служба Безопасности SEC +id-card-access-level-spacesec-armory = Оружейный SEC +id-card-access-level-spacesec-command = Командование SEC \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Access/SpaceSec.yml b/Resources/Prototypes/ADT/Access/SpaceSec.yml new file mode 100644 index 00000000000..e465820afdb --- /dev/null +++ b/Resources/Prototypes/ADT/Access/SpaceSec.yml @@ -0,0 +1,23 @@ +- type: accessLevel + id: SpaceSecOfficial + name: id-card-access-level-spacesec-official + +- type: accessLevel + id: SpaceSecMaintenance + name: id-card-access-level-spacesec-maintenance + +- type: accessLevel + id: SpaceSecExternal + name: id-card-access-level-spacesec-external + +- type: accessLevel + id: SpaceSecSecurity + name: id-card-access-level-spacesec-security + +- type: accessLevel + id: SpaceSecArmory + name: id-card-access-level-spacesec-armory + +- type: accessLevel + id: SpaceSecCommand + name: id-card-access-level-spacesec-command diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Ears/headsets.yml b/Resources/Prototypes/ADT/Entities/Clothing/Ears/headsets.yml index 200cf36bc4c..4ebb6177c20 100644 --- a/Resources/Prototypes/ADT/Entities/Clothing/Ears/headsets.yml +++ b/Resources/Prototypes/ADT/Entities/Clothing/Ears/headsets.yml @@ -45,3 +45,38 @@ - EncryptionKeyCommon - type: Sprite sprite: Clothing/Ears/Headsets/servicesecurity.rsi + + +- type: entity + parent: ClothingHeadset + id: ADTSpaceSecClothingHeadset + name: space sec headset + description: A standart headset for space sec corporation. + suffix: Space Sec + components: + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeySpaceSec + - EncryptionKeyCommon + - type: Sprite + sprite: ADT/Clothing/Ears/Headsets/space_sec_headset.rsi + - type: Clothing + sprite: ADT/Clothing/Ears/Headsets/space_sec_headset.rsi + +- type: entity + parent: ClothingHeadset + id: ADTSpaceSecClothingHeadsetFull + name: space sec full headset + description: A standart headset for space sec corporation. + suffix: Space Sec + components: + - type: ContainerFill + containers: + key_slots: + - ADTEncryptionKeySpaceSec + - EncryptionKeyCommon + - type: Sprite + sprite: ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi + - type: Clothing + sprite: ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Head/hardsuit-helmets.yml b/Resources/Prototypes/ADT/Entities/Clothing/Head/hardsuit-helmets.yml index d0a5e0e12b3..b43cf4a5796 100644 --- a/Resources/Prototypes/ADT/Entities/Clothing/Head/hardsuit-helmets.yml +++ b/Resources/Prototypes/ADT/Entities/Clothing/Head/hardsuit-helmets.yml @@ -22,3 +22,82 @@ Piercing: 0.9 Heat: 0.9 Radiation: 0.9 + + +- type: entity + parent: ClothingHeadHardsuitBase + id: ADTSpaceSecPilotHelm + noSpawn: true + name: space sec pilot helmet + description: Looks like something that inspires order. + components: + - type: Sprite + sprite: ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi + - type: Clothing + sprite: ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: Armor + modifiers: + coefficients: + Blunt: 0.9 + Slash: 0.85 + Piercing: 0.95 + Heat: 0.8 + Radiation: 0.8 + Caustic: 0.95 + - type: ExplosionResistance + damageCoefficient: 0.9 + +- type: entity + parent: ClothingHeadHardsuitBase + id: ADTSpaceSecOfficerHelm + noSpawn: true + name: space sec officer helmet + description: Looks like something that inspires order. + components: + - type: Sprite + sprite: ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi + - type: Clothing + sprite: ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: Armor + modifiers: + coefficients: + Blunt: 0.85 + Slash: 0.85 + Piercing: 0.85 + Heat: 0.9 + Radiation: 0.9 + Caustic: 0.95 + - type: ExplosionResistance + damageCoefficient: 0.9 + +- type: entity + parent: ClothingHeadHardsuitBase + id: ADTSpaceSecCommanderHelm + noSpawn: true + name: space sec commander helmet + description: Looks like something that inspires order. + components: + - type: Sprite + sprite: ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi + - type: Clothing + sprite: ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: Armor + modifiers: + coefficients: + Blunt: 0.8 + Slash: 0.8 + Piercing: 0.8 + Heat: 0.85 + Radiation: 0.85 + Caustic: 0.85 + - type: ExplosionResistance + damageCoefficient: 0.9 diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Neck/misc.yml b/Resources/Prototypes/ADT/Entities/Clothing/Neck/misc.yml new file mode 100644 index 00000000000..b9693252d48 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Clothing/Neck/misc.yml @@ -0,0 +1,8 @@ +- type: entity + parent: ClothingNeckBase + id: ADTSpaceSecToken + name: space sec token + description: The standard token of the space sec corporation + components: + - type: Sprite + sprite: ADT/Clothing/Neck/space_sec_token.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml b/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml new file mode 100644 index 00000000000..3c291eaf138 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml @@ -0,0 +1,99 @@ + +- type: entity + parent: ClothingOuterHardsuitBase + id: ADTSpaceSecPilotHardsuit + name: space sec pilot hardsuit + description: For the guardians of safety among the stars + components: + - type: Sprite + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi + - type: Clothing + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi + - type: ClothingSpeedModifier + walkModifier: 0.9 + sprintModifier: 0.9 + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: TemperatureProtection + coefficient: 0.01 + - type: Armor + modifiers: + coefficients: + Blunt: 0.7 + Slash: 0.6 + Piercing: 0.7 + Heat: 0.4 + Radiation: 0.4 + Caustic: 0.85 + Stun: 0.65 + - type: ToggleableClothing + clothingPrototype: ADTSpaceSecPilotHelm + - type: ExplosionResistance + damageCoefficient: 0.6 + +- type: entity + parent: ClothingOuterHardsuitBase + id: ADTSpaceSecOfficerHardsuit + name: space sec officer hardsuit + description: For the guardians of safety among the stars + components: + - type: Sprite + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi + - type: Clothing + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi + - type: ClothingSpeedModifier + walkModifier: 0.9 + sprintModifier: 0.9 + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: TemperatureProtection + coefficient: 0.01 + - type: Armor + modifiers: + coefficients: + Blunt: 0.6 + Slash: 0.6 + Piercing: 0.5 + Heat: 0.7 + Radiation: 0.8 + Caustic: 0.85 + Stun: 0.6 + - type: ToggleableClothing + clothingPrototype: ADTSpaceSecOfficerHelm + - type: ExplosionResistance + damageCoefficient: 0.5 + +- type: entity + parent: ClothingOuterHardsuitBase + id: ADTSpaceSecCommanderHardsuit + name: space sec commander hardsuit + description: For the guardians of safety among the stars + components: + - type: Sprite + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi + - type: Clothing + sprite: ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi + - type: ClothingSpeedModifier + walkModifier: 0.9 + sprintModifier: 0.9 + - type: PressureProtection + highPressureMultiplier: 0.3 + lowPressureMultiplier: 10000 + - type: TemperatureProtection + coefficient: 0.01 + - type: Armor + modifiers: + coefficients: + Blunt: 0.4 + Slash: 0.4 + Piercing: 0.5 + Heat: 0.5 + Radiation: 0.5 + Caustic: 0.6 + Stun: 0.5 + - type: ToggleableClothing + clothingPrototype: ADTSpaceSecCommanderHelm + - type: ExplosionResistance + damageCoefficient: 0.5 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml b/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml new file mode 100644 index 00000000000..d4d1580d0f0 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml @@ -0,0 +1,55 @@ + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformCadet + name: space sec cadet uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformPilot + name: space sec pilot uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformCommander + name: space sec commander uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformService + name: space sec service uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformOfficer + name: space sec officer uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml new file mode 100644 index 00000000000..db7ce6eafe3 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml @@ -0,0 +1,210 @@ + +- type: entity + parent: MobHuman + id: ADTSpaceSecCadet + name: Space Sec Cadet Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Cadet Random + id: ADTRandomHumanoidSpawnerSpaceSecCadet + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCadet + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCadet + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecOfficer + name: Space Sec Officer Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Officer Random + id: ADTRandomHumanoidSpawnerSpaceSecOfficer + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecOfficer + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecOfficer + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecPilot + name: Space Sec Pilot Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Pilot Random + id: ADTRandomHumanoidSpawnerSpaceSecPilot + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecPilot + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecPilot + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecCommander + name: Space Sec Commander Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Commander Random + id: ADTRandomHumanoidSpawnerSpaceSecCommander + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCommander + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCommander + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecService + name: Space Sec Service Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecService ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Service Random + id: ADTRandomHumanoidSpawnerSpaceSecService + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecService + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecService + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecService ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml b/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml new file mode 100644 index 00000000000..dcfc24bb8f8 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml @@ -0,0 +1,15 @@ + +- type: entity + parent: EncryptionKey + id: ADTEncryptionKeySpaceSec + name: space security encryption key + description: An encryption key used by space security. + components: + - type: EncryptionKey + channels: + - ADTSpaceSecChannel + defaultChannel: ADTSpaceSecChannel + - type: Sprite + layers: + - state: crypt_gray + - state: sec_label \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml index 83d6930836f..0393ab3fa78 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml @@ -35,3 +35,104 @@ - state: idroboticist - type: PresetIdCard job: ADTRoboticist + +- type: entity + parent: IDCardStandard + id: ADTSpaceSecCadetIDCard + name: space sec cadet ID card + components: + - type: Sprite + sprite: ADT/Objects/Misc/space_sec_ids.rsi + layers: + - state: default + - state: id-cadet + - type: IdCard + jobIcon: JobIconADTSpaceSecCadet + jobTitle: Кадет SPACE SEC + - type: Access + tags: + - SpaceSecOfficial + - SpaceSecMaintenance + - SpaceSecSecurity + +- type: entity + parent: IDCardStandard + id: ADTSpaceSecOfficerIDCard + name: space sec officer ID card + components: + - type: Sprite + sprite: ADT/Objects/Misc/space_sec_ids.rsi + layers: + - state: default + - state: id-officer + - type: IdCard + jobIcon: JobIconADTSpaceSecOfficer + jobTitle: Офицер SPACE SEC + - type: Access + tags: + - SpaceSecOfficial + - SpaceSecMaintenance + - SpaceSecSecurity + - SpaceSecArmory + - SpaceSecExternal + +- type: entity + parent: IDCardStandard + id: ADTSpaceSecPilotIDCard + name: space sec pilot ID card + components: + - type: Sprite + sprite: ADT/Objects/Misc/space_sec_ids.rsi + layers: + - state: default + - state: id-pilot + - type: IdCard + jobIcon: JobIconADTSpaceSecPilot + jobTitle: Пилот SPACE SEC + - type: Access + tags: + - SpaceSecOfficial + - SpaceSecMaintenance + - SpaceSecSecurity + - SpaceSecArmory + - SpaceSecExternal + +- type: entity + parent: IDCardStandard + id: ADTSpaceSecCommanderIDCard + name: space sec commander ID card + components: + - type: Sprite + sprite: ADT/Objects/Misc/space_sec_ids.rsi + layers: + - state: default + - state: id-commander + - type: IdCard + jobIcon: JobIconADTSpaceSecCommander + jobTitle: Командир SPACE SEC + - type: Access + tags: + - SpaceSecOfficial + - SpaceSecMaintenance + - SpaceSecSecurity + - SpaceSecArmory + - SpaceSecExternal + - SpaceSecCommand + +- type: entity + parent: IDCardStandard + id: ADTSpaceSecServiceIDCard + name: space sec service ID card + components: + - type: Sprite + sprite: ADT/Objects/Misc/space_sec_ids.rsi + layers: + - state: default + - state: id-service + - type: IdCard + jobIcon: JobIconADTSpaceSecService + jobTitle: Сотрудник SPACE SEC + - type: Access + tags: + - SpaceSecOfficial + - SpaceSecMaintenance diff --git a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml new file mode 100644 index 00000000000..3593104e01f --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml @@ -0,0 +1,8 @@ +- type: entity + parent: BaseWeaponTurret + id: ADTWeaponTurretSpaceSec + suffix: Space Sec + components: + - type: NpcFactionMember + factions: + - SpaceSecFaction \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/access.yml b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/access.yml index d777d7c6774..6fd42bf625f 100644 --- a/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/access.yml +++ b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/access.yml @@ -15,3 +15,134 @@ - type: ContainerFill containers: board: [ DoorElectronicsIAA ] + +- type: entity + parent: ADTSpaceSecAirlock + id: ADTSpaceSecAirlockOfficial + suffix: Space Sec, Locked + components: + - type: AccessReader + access: [["SpaceSecOfficial"]] + +- type: entity + parent: ADTSpaceSecAirlock + id: ADTSpaceSecAirlockSecurity + suffix: Space Sec, Security + components: + - type: AccessReader + access: [["SpaceSecSecurity"]] + +- type: entity + parent: ADTSpaceSecAirlock + id: ADTSpaceSecAirlockMaintence + suffix: Space Sec, Maintenance + components: + - type: AccessReader + access: [["SpaceSecMaintenance"]] + +- type: entity + parent: ADTSpaceSecAirlock + id: ADTSpaceSecAirlockArmory + suffix: Space Sec, Armory + components: + - type: AccessReader + access: [["SpaceSecArmory"]] + +- type: entity + parent: ADTSpaceSecAirlock + id: ADTSpaceSecAirlockCommand + suffix: Space Sec, Command + components: + - type: AccessReader + access: [["SpaceSecCommand"]] + +- type: entity + parent: AirlockShuttleSyndicate + id: ADTSpaceSecAirlockShuttle + suffix: Space Sec, External + components: + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec + - type: AccessReader + access: [["SpaceSecExternal"]] + +- type: entity + parent: AirlockExternal + id: ADTSpaceSecAirlockExternal + suffix: Space Sec, External + components: + - type: AccessReader + access: [["SpaceSecExternal"]] + +- type: entity + parent: ADTSpaceSecGlassAirlock + id: ADTSpaceSecGlassAirlockOfficial + suffix: Space Sec, Locked + components: + - type: AccessReader + access: [["SpaceSecOfficial"]] + +- type: entity + parent: ADTSpaceSecGlassAirlock + id: ADTSpaceSecGlassAirlockSecurity + suffix: Space Sec, Security + components: + - type: AccessReader + access: [["SpaceSecSecurity"]] + +- type: entity + parent: ADTSpaceSecGlassAirlock + id: ADTSpaceSecGlassAirlockMaintence + suffix: Space Sec, Maintenance + components: + - type: AccessReader + access: [["SpaceSecMaintenance"]] + +- type: entity + parent: ADTSpaceSecGlassAirlock + id: ADTSpaceSecGlassAirlockArmory + suffix: Space Sec, Armory + components: + - type: AccessReader + access: [["SpaceSecArmory"]] + +- type: entity + parent: ADTSpaceSecGlassAirlock + id: ADTSpaceSecGlassAirlockCommand + suffix: Space Sec, Command + components: + - type: AccessReader + access: [["SpaceSecCommand"]] + +- type: entity + parent: AirlockGlassShuttle + id: ADTAirlockShuttleSpaceSecWhiteGlass + suffix: Space Sec, External + components: + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec + - type: AccessReader + access: [["SpaceSecExternal"]] + +- type: entity + parent: AirlockShuttle + id: ADTAirlockShuttleSpaceSecWhite + suffix: Space Sec, External + components: + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec + - type: AccessReader + access: [["SpaceSecExternal"]] + diff --git a/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/airlocks.yml b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/airlocks.yml new file mode 100644 index 00000000000..1e4db5e8788 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/airlocks.yml @@ -0,0 +1,28 @@ +- type: entity + parent: Airlock + id: ADTSpaceSecAirlock + suffix: Space Sec + components: + - type: Sprite + sprite: ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec + +#Glass +- type: entity + parent: AirlockGlass + id: ADTSpaceSecGlassAirlock + suffix: Space Sec + components: + - type: Sprite + sprite: ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/shuttle.yml b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/shuttle.yml new file mode 100644 index 00000000000..814369973c3 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Doors/Airlock/shuttle.yml @@ -0,0 +1,41 @@ +- type: entity + id: ADTSpaceSecAirlockGlassShuttle + parent: AirlockShuttle + name: external airlock + suffix: Space Sec, External + description: Necessary for connecting two space craft together. + components: + - type: Docking + - type: Sprite + sprite: ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi + snapCardinals: false + layers: + - state: closed + map: ["enum.DoorVisualLayers.Base"] + - state: closed_unlit + shader: unshaded + map: ["enum.DoorVisualLayers.BaseUnlit"] + - state: welded + map: ["enum.WeldableLayers.BaseWelded"] + - state: bolted_unlit + shader: unshaded + map: ["enum.DoorVisualLayers.BaseBolted"] + - state: emergency_unlit + shader: unshaded + map: ["enum.DoorVisualLayers.BaseEmergencyAccess"] + - state: panel_open + map: ["enum.WiresVisualLayers.MaintenancePanel"] + - type: Occluder + enabled: false + - type: PaintableAirlock + group: ShuttleGlass + - type: Door + occludes: false + - type: WiresPanel + - type: WiresPanelSecurity + securityLevel: maxSecurity + - type: Wires + boardName: wires-board-name-highsec + layoutId: HighSec + - type: AccessReader + access: [["SpaceSecExternal"]] \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml b/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml new file mode 100644 index 00000000000..8e3535eb58e --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml @@ -0,0 +1,67 @@ +- type: entity + parent: BaseComputer + id: ADTSpaceSecComputerId + name: space sec ID card computer + description: Terminal for programming Nanotrasen employee ID cards to access parts of the station. + components: + - type: IdCardConsole + privilegedIdSlot: + name: id-card-console-privileged-id + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + ejectOnBreak: true + swap: false + whitelist: + components: + - IdCard + targetIdSlot: + name: id-card-console-target-id + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + ejectOnBreak: true + swap: false + whitelist: + components: + - IdCard + accessLevels: [ + "SpaceSecOfficial", + "SpaceSecMaintenance", + "SpaceSecSecurity", + "SpaceSecArmory", + "SpaceSecExternal", + "SpaceSecCommand",] + + - type: ActivatableUI + key: enum.IdCardConsoleUiKey.Key + - type: UserInterface + interfaces: + - key: enum.IdCardConsoleUiKey.Key + type: IdCardConsoleBoundUserInterface + - type: CrewManifestViewer + ownerKey: enum.IdCardConsoleUiKey.Key + - type: Sprite + layers: + - map: ["computerLayerBody"] + state: computer + - map: ["computerLayerKeyboard"] + state: generic_keyboard + - map: ["computerLayerScreen"] + sprite: ADT/Structures/Machines/space_sec_computer.rsi + state: id + - map: ["computerLayerKeys"] + state: syndie_key + - type: Computer + board: IDComputerCircuitboard + - type: PointLight + radius: 1.5 + energy: 1.6 + color: "#D3D3D3" + - type: Tag + tags: + - EmagImmune + - type: ItemSlots + - type: ContainerContainer + containers: + board: !type:Container + IdCardConsole-privilegedId: !type:ContainerSlot + IdCardConsole-targetId: !type:ContainerSlot \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml new file mode 100644 index 00000000000..b88227141f5 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml @@ -0,0 +1,10 @@ + +- type: entity + parent: ADTPosterBaseKek + id: ADTPosterSpaceSec + name: SPACE SEC logo + description: "This is the logo of the SPACE SEC Corporation" + components: + - type: Sprite + sprite: ADT/Structures/Wallmounts/space_sec_poster.rsi + state: poster_spacesec diff --git a/Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml b/Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml new file mode 100644 index 00000000000..436c4a84e7a --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml @@ -0,0 +1,59 @@ +- type: entity + parent: BaseWall + id: ADTSpaceSecWall + name: space sec wall + suffix: Space Sec + components: + - type: Sprite + sprite: ADT/Structures/Walls/space_sec_wall.rsi + - type: Icon + sprite: ADT/Structures/Walls/space_sec_wall.rsi + - type: IconSmooth + key: walls + base: state + - type: Tag + tags: + - Wall + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 550 + behaviors: + - !type:SpawnEntitiesBehavior + spawn: + Girder: + min: 1 + max: 1 + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + parent: WallShuttleDiagonal + id: ADTSpaceSecWallDiagonal + name: space sec wall + suffix: Space Sec, diagonal + placement: + mode: SnapgridCenter + snap: + - Wall + components: + - type: Sprite + drawdepth: Walls + sprite: ADT/Structures/Walls/space_sec_diagonal.rsi + state: state0 + - type: IconSmooth + mode: Diagonal + key: walls + base: state + - type: Icon + sprite: ADT/Structures/Walls/space_sec_diagonal.rsi + state: state0 + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 550 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml b/Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml new file mode 100644 index 00000000000..03747f25dbd --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml @@ -0,0 +1,90 @@ +- type: entity + id: ADTSpaceSecWindow + name: space sec window + parent: Window + suffix: Space Sec + components: + - type: Sprite + drawdepth: WallTops + sprite: ADT/Structures/Windows/space_sec_window.rsi + - type: Icon + sprite: ADT/Structures/Windows/space_sec_window.rsi + - type: Repairable + fuelCost: 15 + doAfterDelay: 3 + - type: Damageable + damageContainer: StructuralInorganic + damageModifierSet: RGlass + - type: Destructible + thresholds: + - trigger: + - trigger: + !type:DamageTrigger + damage: 525 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WindowShatter + - !type:SpawnEntitiesBehavior + spawn: + ShardGlassReinforced: + min: 1 + max: 2 + PartRodMetal: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: IconSmooth + base: swindow + - type: Appearance + - type: DamageVisuals + thresholds: [4, 8, 12] + damageDivisor: 28 + trackAllDamage: true + damageOverlay: + sprite: Structures/Windows/cracks.rsi + - type: StaticPrice + price: 150 + +- type: entity + parent: ADTSpaceSecWindow + id: ADTSpaceSecWindowDiagonal + suffix: Space Sec, diagonal + placement: + mode: SnapgridCenter + snap: + - Window + components: + - type: Sprite + drawdepth: WallTops + sprite: ADT/Structures/Windows/space_sec_diagonal.rsi + state: state0 + - type: IconSmooth + mode: Diagonal + key: walls + base: state + - type: Icon + sprite: ADT/Structures/Windows/space_sec_diagonal.rsi + state: state0 + - type: Fixtures + fixtures: + fix1: + shape: + !type:PolygonShape + vertices: + - "-0.5,-0.5" + - "0.5,0.5" + - "0.5,-0.5" + mask: + - FullTileMask + layer: + - GlassLayer + - type: Airtight + noAirWhenFullyAirBlocked: false + airBlockedDirection: + - South + - East + - type: DamageVisuals + damageOverlay: + sprite: Structures/Windows/cracks_diagonal.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml new file mode 100644 index 00000000000..63e7852ba81 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml @@ -0,0 +1,16 @@ +- type: startingGear + id: SpaceSecCadet + equipment: + jumpsuit: ADTSpaceSecUniformCadet + back: ClothingBackpackFilled + shoes: ClothingShoesBootsCombatFilled + eyes: ClothingEyesGlassesSunglasses + id: ADTSpaceSecCadetIDCard + ears: ADTSpaceSecClothingHeadset + underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear + socks: ClothingUnderwearSocksNormal + neck: ADTSpaceSecToken + gloves: ClothingHandsGlovesColorBlack + outerClothing: ClothingOuterArmorBasic + underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear + underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml new file mode 100644 index 00000000000..c2b619d3883 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml @@ -0,0 +1,16 @@ +- type: startingGear + id: SpaceSecCommander + equipment: + jumpsuit: ADTSpaceSecUniformCommander + back: ClothingBackpackFilled + shoes: ClothingShoesBootsCombatFilled + eyes: ClothingEyesGlassesSunglasses + id: ADTSpaceSecCommanderIDCard + ears: ADTSpaceSecClothingHeadsetFull + underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear + socks: ClothingUnderwearSocksNormal + neck: ADTSpaceSecToken + gloves: ClothingHandsGlovesCombat + outerClothing: ClothingOuterArmorBasic + underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear + underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml new file mode 100644 index 00000000000..884d932c854 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml @@ -0,0 +1,16 @@ +- type: startingGear + id: SpaceSecOfficer + equipment: + jumpsuit: ADTSpaceSecUniformOfficer + back: ClothingBackpackFilled + shoes: ClothingShoesBootsCombatFilled + eyes: ClothingEyesGlassesSunglasses + id: ADTSpaceSecOfficerIDCard + ears: ADTSpaceSecClothingHeadset + underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear + socks: ClothingUnderwearSocksNormal + neck: ADTSpaceSecToken + gloves: ClothingHandsGlovesCombat + outerClothing: ClothingOuterArmorBulletproof + underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear + underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml new file mode 100644 index 00000000000..c10fbee7aa6 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml @@ -0,0 +1,16 @@ +- type: startingGear + id: SpaceSecPilot + equipment: + jumpsuit: ADTSpaceSecUniformPilot + back: ClothingBackpackFilled + shoes: ClothingShoesBootsCombatFilled + eyes: ClothingEyesGlassesSunglasses + id: ADTSpaceSecPilotIDCard + ears: ADTSpaceSecClothingHeadsetFull + underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear + socks: ClothingUnderwearSocksNormal + neck: ADTSpaceSecToken + gloves: ClothingHandsGlovesCombat + outerClothing: ClothingOuterArmorBasic + underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear + underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml new file mode 100644 index 00000000000..0fa51e839b5 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml @@ -0,0 +1,13 @@ +- type: startingGear + id: SpaceSecService + equipment: + jumpsuit: ADTSpaceSecUniformService + back: ClothingBackpackSatchelFilled + shoes: ClothingShoesColorBlack + id: ADTSpaceSecServiceIDCard + ears: ADTSpaceSecClothingHeadset + underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear + socks: ClothingUnderwearSocksNormal + neck: ADTSpaceSecToken + underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear + underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StatusEffects/job.yml b/Resources/Prototypes/ADT/StatusEffects/job.yml index cf9957ad852..23db2382447 100644 --- a/Resources/Prototypes/ADT/StatusEffects/job.yml +++ b/Resources/Prototypes/ADT/StatusEffects/job.yml @@ -3,4 +3,41 @@ id: JobIconADTPathologist icon: sprite: /Textures/ADT/Interface/Misc/job_icons.rsi - state: ADTPathologist \ No newline at end of file + state: ADTPathologist + +#SPACE SEC + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecCadet + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecCadetStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecOfficer + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecOfficerStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecPilot + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecPilotStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecCommander + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecCommanderStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecService + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecServiceStatusIcon diff --git a/Resources/Prototypes/ADT/ai_faction.yml b/Resources/Prototypes/ADT/ai_faction.yml new file mode 100644 index 00000000000..146ede980dd --- /dev/null +++ b/Resources/Prototypes/ADT/ai_faction.yml @@ -0,0 +1,33 @@ +- type: npcFaction + id: Ursus + hostile: + - Syndicate + - Xeno + - Zombie + - Revolutionary + +- type: npcFaction + id: DroneAntag + hostile: + - SimpleHostile + - Passive + - SimpleNeutral + - Mouse + - Syndicate + - Xeno + - Zombie + - Revolutionary + - NanoTrasen + - PetsNT + - Dragon + - Ursus + - SpaceSecFaction + +- type: npcFaction + id: SpaceSecFaction + hostile: + - SimpleHostile + - Xeno + - Zombie + - Dragon + - DroneAntag \ No newline at end of file diff --git a/Resources/Prototypes/ADT/radio_channels.yml b/Resources/Prototypes/ADT/radio_channels.yml index bde851d1453..0b1ff975092 100644 --- a/Resources/Prototypes/ADT/radio_channels.yml +++ b/Resources/Prototypes/ADT/radio_channels.yml @@ -5,3 +5,11 @@ frequency: 1305 color: "#c6d2f5" longRange: false + +- type: radioChannel + id: ADTSpaceSecChannel + name: SPACE SEC линия + keycode: 'у' + frequency: 1302 + color: "#c8c3c0" + longRange: true \ No newline at end of file diff --git a/Resources/Prototypes/ai_factions.yml b/Resources/Prototypes/ai_factions.yml index 3dfb35c7a69..a85a5bb4da6 100644 --- a/Resources/Prototypes/ai_factions.yml +++ b/Resources/Prototypes/ai_factions.yml @@ -16,6 +16,7 @@ - Xeno - Zombie - Revolutionary + - DroneAntag # ADT tweak - type: npcFaction id: Mouse @@ -54,6 +55,7 @@ - Xeno - PetsNT - Zombie + - DroneAntag # ADT tweak - type: npcFaction id: Xeno diff --git a/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/equipped-EARS.png b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/equipped-EARS.png new file mode 100644 index 0000000000000000000000000000000000000000..8071824a4cd9a5cfbcce32bf99a98fc512438b7b GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|+&x_!Ln`LH zy|s~-L4m{7@p`iHwri)Z-4IaSIr~9i{V@iHyp(4(cMF1Ui3`Td?=OAH0@MTq3tI2j gvwGcpzzF6nWz~=34e@pr-vZ)#y85}Sb4q9e01nzKKL7v# literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/icon.png b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..9d7f4a4eabad38a4d9d1b0fc68288bd29a8e2773 GIT binary patch literal 297 zcmV+^0oMMBP)Px#<4Ht8R9J=WlsOKAFc3w5QX-kw(^^1!j=^mxI1pFy1vo$;4HeS{$*og?pdi9* zQWU?+mTdhu;|1_|JpazkWib)iPzb#H9$nWt?Oo#T5}u|hqBusL=O7|`nZOVZ0L%=n z^jY6w0!MQVIYN3URFf00coWj^BO1 zTVVBP@<DU^o7;8zh4Xkko~!r(BsNVN$Bu|A00000NkvXXu0mjf61sM; literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/meta.json b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/meta.json new file mode 100644 index 00000000000..8700f1cfeb0 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-EARS", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/equipped-EARS.png b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/equipped-EARS.png new file mode 100644 index 0000000000000000000000000000000000000000..13190138c87ca7d8c75684c5ca15029cf3d8067d GIT binary patch literal 383 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zEj?WvLn`LH zy`|g7Y)3lj1{`7{;4?dI3$}lAoCrcNta)%waH}l$;=7p{ATADt)Hw?axHB z-*)>}?_0NJ^|Xfi+(}gir;YMwxs}GguCP(N?z#2$+ZwaknO1YN_TN|k?r$~Y`OfL7 zKWnd@`BP%WYsO;y`D)hEqe%;wWtQxXi{@RpIlwirV!mzHq5|X3Hs`C~PCj#{iZ?B7 zUTWlWTf1F4YG2J;((i7!|2n@#pk{B}_g_rE*3DOGd7#+xk(C+fAuw=gKejLGD@n%lUq<7zU>rMB*6l=G;*JRDEbzduNCh7lA|ESIgwQa&P YZvE{!Pj-K}br>Y#>FVdQ&MBb@0ISHSlK=n! literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/icon.png b/Resources/Textures/ADT/Clothing/Ears/Headsets/space_sec_headset_full.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d5910fbe9eb8bb4632766fc66fba2621466e24e8 GIT binary patch literal 473 zcmV;~0Ve*5P)Px$lSxEDR9J=Wl|5_YKoEu>n*%3?)s?%K&V}qo7*}o=Tm=8-D+2BfhL9=>7>ojT za1$*^XBXaUZiSrK=quzJy^WA|cHT!bvl6sw)#^X1Q+318_btFpua`Z0e0r*!rxw6C z2yFiT&*8vLua{lxfRx@a^nL5hp2M(n4alv1DS$J&W-tx{o3BO{h{C}8*~}(s%G-W_ z)^|AXy@LQM0d$K3em^{P`nR{A%snBvpUtusyzTeI#t<8m4Qd(Hp5Ac~SWgH5Ue;^0 z*4f%(vA`3eR3!>4a80iKFY7ha>6A203BwQotu?VRrSjAUaORWA1b`@tn9t{D5K5`S zRx|=|EjS*JBuT<%vmr^6N;w(<037~JeqL#sejh+nh#yVOPp1Px%gGod|RCt{2nlVq~Fc^kk$}PmCQkUFC?$kyeZewC8>v^tEU`M zyuj;OX^Y9^7)lk8GB-`B0+Y$H(|FbikTS=7I>hYx5CAZHKE!-Fgp|2c0JbDa3LylP zDohhXAW2fE@vOE0V?LBB5XB2z_Z~6(_8r%~M?~?$Y!9HlL}+~}u{PsLk~-^KA0Ok9 zsI(a8p;>~A`S|fOYyCLfwZ2opeZOCM9y8Zvsqj!dboMW>OMT~{`+naXJ6*o~N6{w; zf*=TjAP9mW2!bF8g808^+Y4aBHnBMS1AzDS2sE{`EOQ>mx;EGp*Tu;o7~taktg{ty zaeh_>!NBM@W3t6M0n?MyN{ezHg7eT6Cc8+2)<}}n=mYg+xFo@P3p8u-S(bq@zxD^j zX(uJ}`}<#}LamFk08G);7N;%n8toTworO)&t516pc7am@gb-`j+AqL)h#(m3B(Ogb z1Osp$8c)JoF>Q)<0<=4WG2a*!v|nJGukog2S+?d$5JG@4-`OT(oq*+CzPDN}0o30E zorKGS(0LYY5JKScAT%$pKgg@q63e^18-D;$|9q6C0swd(Ls=?#9&-x9MOSNT{kC=A vq*<%~mo*83AP9mW2!bF8f*=Tj`1^SQ(ZFF3v@UXW00000NkvXXu0mjfC-g*Q literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi/icon.png b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_commander_hardsuithead.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..9a206db7e90a0a3c2e603e8c395315e29cd564ee GIT binary patch literal 766 zcmVEX>4Tx04R}tkv&MmKp2MKrqznHIJAR^Lx$>P7Zq_VRV;#q(pG5I!Q|3EXktiG zTpR`0f`dPcRRb5H)lP)S?Pah>KUQdmS98HkY4Kn-^!DxFnoj?I05!~Vj=1%*7XSbN24YJ`L;(K){{a7>y{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U_6EYOvE6kk$008<)L_t(o!|jx@Zi6rohCfKB z5Rkg0MP$N=wRd1y?riMTCKoEogh%`6LNY!t#&}9xk-}vX7499 z);pke3qUDm)b$>Ky53WY*-hS>f$p|h)v&oJ05%szRyEvr#hL*r6^CNQ`nmvMeO+)U zR!FJ-W(c)z$*P8}e`2?LXX~HHss^pw!9(bc9l}m5Nn)f_z4+(XhiBaYKomx1J`ei% weAXP>Px%uSrBfRCt{2n!j(_KorNnpl&B4F)036$kzFar|qWh?H0?rIxX$z3rW@;(v*?tDMqySr!0-v>N!YBr4y z4|wW%UHxB(2$N}O)z|;#k!b^Eyz4fLRq4K*u*(H7c7T)#gvgf(5kbntW_)9Iy#RHS zi{HL^ovPnLM7i%`eHFZTeyaNqg0cRT)!!GR9S{U#aLy5iApk%K=#}T3=O$AHuG@qV zksefIIuW2k_r>P;|mz-%7XfX%r-o&3U= zXD{*T@e>^fRDG3j&h=LJ{Sko8(cqk0^=JJYAZ4QC0b|bIo&y?ABW<-h==F}^`y&hn zeFVW6i^UA9WL525KrxwyHO3qW5$)A@09Ylf+F~(7952C`gE(GV8&41fK@bE%5ClOG z1VIo4K@blN>v!pg2RsF!HM+0gzVG$Dyi%f-L}sf^7&q#)yD5MzDN4yzRXai%UKB!= zVr(kU8C~3IcT>h30N4^k8FS!y-AdDCRB}XFLPmC8CQdMt$Fs6@F&99}1YuaMLYy5# z8LY_9D=IeqE5<1@YU^e7dEX!5WBn)2Up>Xe)1Nrp^ZffZJP1c>x4L n5ClOG1VIo4K@bE%5GMQvwoGG>zWYo$00000NkvXXu0mjf%Q8*g literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/icon.png b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c59c57012bc9eb95ad35be16d48d994023cef07e GIT binary patch literal 728 zcmV;}0w?{6P)EX>4Tx04R}tkv&MmKp2MKrqznHIJAR^Lx$>P7Zq_VRV;#q(pG5I!Q|3EXktiG zTpR`0f`dPcRRb5H)lP)S?Pah>KUQdmS98HkY4Kn-^!DxFnoj?I05!~Vj=1%*7XSbN24YJ`L;(K){{a7>y{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U_6EPAUWjbpB007iUL_t(o!|jy23c@fHhW{3~ z(7~lzx+xUgyLB(P3Hna%K3+g^3DI;Yvdv7fuL`=-DHNb z1okH=)w1VIo40RTV7@o03}P!b3L0000< KMNUMnLSTaG89b=~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/meta.json b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/meta.json new file mode 100644 index 00000000000..d3846ffcfbc --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_officer_hardsuithead.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/equipped-HELMET.png b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..b1d3dee56afdef66b7f752138fde447b4e3ef64f GIT binary patch literal 718 zcmV;<0x|uGP)Px%h)G02RCt{2nlVq?KorOSjXGf^5)Q!JM0jm+=&YV?R-#G0GbQCYhJnr7!|EXy&?DaBXG{)dG$(AVHjdOW|$Q-r-jgO2eRzD9K+ot zHTG?ML8IP~&8Cm#*Wh$|=RA3Z-wvJ>JDcPIi`U@)B=xH>%kr%z57;M55ClOG1VIo4 zK@bE%5ClOGZyf9I>q?wZI^CDA-?sX#{_65vW?8Oc)*4#=-jSK!#!XM3D5nx|Yj+{`%o$5LExcbG|v}#!rIL z$$mSKN{5f4enpQj2joh+DrB}PNy>f(EiIYnPMc4dR|>iVx{6f|0G@vYvn+R716r-!wM)=x4N$CFi=9rOXTnvtSg#w(WnbHEX>4Tx04R}tkv&MmKp2MKrqznHIJAR^Lx$>P7Zq_VRV;#q(pG5I!Q|3EXktiG zTpR`0f`dPcRRb5H)lP)S?Pah>KUQdmS98HkY4Kn-^!DxFnoj?I05!~Vj=1%*7XSbN24YJ`L;(K){{a7>y{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U_6Eg_XF`<(H008AlL_t(o!|ju?3c@fDhW{3~ z(t<;a;--+f4vy;R6ZjfFjIZJ9;xjn3lf!{-#o7)+V^-rJ4OF_cT3qgfK<<8$|G4A; zhG7`y&sc2_PR2ryMne-P$ra}dHNLO+jd>9CKPBC?2)n8IV!qVnK8j9e)#;sdAPD+M zk}HU)k|&aI9Jj73zbzok?odi%Yd^4F&9FNhjkZy5z0)U%;|Kt-zdbAYGA{MbroeMO z9fng75gf-gd8H(T5QyUlg)FR2$Ix>*V%Nbg|r#t}n00000NkvXXu0mjfputXE literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/meta.json b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/meta.json new file mode 100644 index 00000000000..d3846ffcfbc --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Head/Hardsuits/space_sec_pilot_hardsuithead.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/equipped-NECK.png b/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/equipped-NECK.png new file mode 100644 index 0000000000000000000000000000000000000000..78377a30d3f0fd509bab61dc5d1a258ee7c54d1d GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1quc!6;7`$B>G+x0g2ZHW=`*9O&pXlvEKmaG7?B ztz_bigC_GBGMLKG?vIIz2P)pN@Vi{$8^dEAHomDRYo5ex&-q;WlyU2|9Q&(Lvy1)# vRlvXp&!sVQ0|kOrnrlF|@TEq0ruq6ZXaU(AP&Jo=Cxcj?u6{1-oD!M<95F!+ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/icon.png b/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..64b9149f453b8b64613856a4bd1dfc89378904f5 GIT binary patch literal 320 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;BHSB$B+p3w^suB4jFK;Jvb-4P5eVa+=6*$ zxqa%HCQmrlWcs;PKQbYzbzQ8tm*&zHbFW6dye0p1uCd&!O@$>B?eo`OtlfWC(`k2D z*WU83+uW+c;(fu3XL<&9-pcsXv72$i%;qy!&dGe)F*AT!dDjQ?Y0?(F*FxTx?S1W7 zuV?xH%i^W#3fZ!e#oBimuKlUtwX`=|a%%6L=M6SN(J?oU9VixS;Zxesn=$dw=?fe$ z&Yp;$`#Qfh*z2XaS0&TtBU67#eGWbY^afvQglC$sFM}44%>l$9a4C2)i1Kvxb6Mw< G&;$T3czW;v literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/meta.json b/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/meta.json new file mode 100644 index 00000000000..102746b147b --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Neck/space_sec_token.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-NECK", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..53528b82fd16a78e780e7f5266da0b9383a9ab57 GIT binary patch literal 1466 zcmV;r1x5OaP)Px)bV)=(RCt{2TETAHMi6}}3dA8n)oLJ$3~w#KgHGlpf&nJ^g#ztowm?5ZfZ<$p z^MOEnV<<~-0`NvY55o`u;JO1ON!1?569B+$_H=C&jUU@? z#PtC1c)yVl_VF(kzPOh7O!#XxAWbuIY}*ckz^AW)An=i<*_JklbNPM~)bZ0x0%*j) zQvmbZtmlou)3iEYF6UsZ5CZ`K#tHzwAY-gRSu*hq#tLIQP{$udWATzeC5+kZ#)yCK z6mZ=E7K;^@%ei%pDMcyk*hKq{`w(S7G#{b1dB;1gEUlX*!U#kH`@HpqWZ97Pk z1eI!zF`Zt6+*Fbz8*WIR8m8FCPiVqls{ujaBZ|i2VPyQ$G{bay4cm4wonCM4kD{?S zH$@%)VzCmxCj2`EFu%=uL_~fbsODM__z1%gj1>sO5JBK?%uTY=X___i0(Japnu%W% z{=I|y@rRHDl^e1w8@BC;<1h@7BnirriPab#1Hd1DCXJWEb^L@T{09xt8~I%J|KxT^ z0NeVGu@6xBX+F!m@;Cs9wnO=AZGa5&t*$$GHn-~fjs<$IY~ToKn$faXo4?iz)S)by zQ2#ceE_${t&UA2)03Owe1C^9X-Drzioj>&*Q~fvjt1p}+#Rk9JuFHS$6aXO99Dp!1 z^e^|d0hQkr2Mb_+oAt==0+m&k|EcfTUti{z&sF|i*X@Ir4UjFZZ9B+|TzmoQJ0)l( zxQoA9IqK~{4i>;KKmWw(>&q`IyCwjL;|c%ux8IMh1;n4Go6B1|CRZFqV=aEIbpUNY zflBrABJcH`KBuoh{ij+7$Q&xaJhr2+1LAmsC>o1!lsfO|T)pmCh~o(uE5z5{#ZT89 zo4-Sc4jnpl=+L3Ve-TFOb;`d}G)B(Vw+RY{P=M5A|DhES0iJU9VHm=)Yz&7U`c9vd zP}+bu@;PmSC^{X-6PS!aO8{!lzATw2OejkxzQ`%jclulngUj^*xOv05K+2(+dE%{MvkCckvk zZ15qFIpmyR6pe*l(t+_5kh8C*F?my{ncpV$2-*Uua_<%Kwt|H=pcX~QW737T8>EOV zc>}dz;oaN!C-VgF-oEE*Q3Oy~e;SuAv<0B%?2{xx5cnc)cS=J@X|Xt-JZ6Ft(QaCg zpd|pRzfp7ca>0b$er!b1_*qc~wNpKS?v&J8I?_T%4ubhgXv!q?+sXgU;iOuwFliLJ3lNIZ>m#FVXe_d6DtN;A_Rg4eJ4<>eb}t5?v4(SUc=1gzH&CpUzH z^8tVH;tad$6?C6x>;;y~Ifg@TBNu;l^#QBu U>m;zAX8-^I07*qoM6N<$f-yb4+W-In literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/icon.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7d6f1728cd9bee29186259ce4faf2369614551c3 GIT binary patch literal 533 zcmV+w0_y#VP)Px$&q+igad(I<(b?}c-Bj<&b* zvCWkKhpFJ(?F(&t0`N+uh;(FG0pP>GEGwcsNt8FnkmpP4dgrG|{E|SiD!nlVfIMGf z?I7Q7UjTT0eg9ik>x=Ar{10%kzf0n72Apf+U8xkU%a9GUE^)5;Kt_Cz?SGrV{?IIn z72dhweLU_F=^_yTkq#(hFp-YFm*_*Jo9u(h66E=kwmoq??xXWSDg+L}f?n$~+VM9^ z5YEu)V+>h=e5&fR&@_rhjVp;QWRb#69Q9K*5Q6z*mq1h~}P zE0tocWhl*>y514S)LMHrhU3zFIRjdkRMk2<3(eAL^@W9p7Ifus<{l z=Nj7f6z3dSoNC@!#ML XzE><+f;5}V00000NkvXXu0mjfYH9p! literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-left.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..22371c71250fe3c0ea6d2655199fb91406035962 GIT binary patch literal 449 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zt36#DLn`LH zy|p*5*+7K#!R1xK0c|=BPkB}LJE@=04)KcH@s?R7nBDtr+oTN!3Y&L1&)VYXd+NOJ z60hg89Xh&8Q#a4y77&Diiw2oVH8Ps@JNlKMUOw`}`~8=dsvD1OV_)f%nY8B`mn)-= zc)uJ&*lP2PwG0RL*WcK^ace{Gm7@M5QVa~&q8J<^!x$KzXGKISb1YNZy6$1zB9D1z z_g>@jeayg+XyGhzj)B4V@q(>R^Uhl5KJ?zY&M}2uXD_J%wC#*es{+YiT2m kIpsgqa}*U8Ewp1yPr7(TY}w;Yz&K&>boFyt=akR{0HhAYQ~&?~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..4d64cd05dd2f6cb22c199ba019c6b7e8fca7537b GIT binary patch literal 446 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zD?D8sLn`LH zy|q8D$${bc$MwGIp6ufPT6~4$77BmhQu}o%SKeV6pUN)5wchN^uS*Ri7T<8P(ax=# z@7b@hKjvNDPuUJQ;P5#%@#EeDSMJy98%!=t+4tL5zU1tm8zvT#?rJ>DT};n5r!#Me z*dyG=*buqyQ{&kSW|rrIm!IhsW|;8YlHvASb%xZP%IC{1&P{%MCT!}{b-~ZtFE^_A z`AV>bgmN~#?kl(}$PgMT)W+yJ=UbI_$;lcsM%RtYG_EnY1eQpwx0knnzj)nD>F=&W z%a`3_^3|`Xt$z7dvY>|J+PYJ3sv9$ZUAFt(J=4_%0UAE9y0>g|-Ujap_jecvgn#{g zt2*o1=9O2!$F4c9&${#Y+{Vj51=oZxh&;Jg&i2a7`m`BO`?-amzU@7bV|Oh~ZO>J) z9oOeJ&RGjW$_6+PqBN>nf2G}^v(-6;+K9kdUbei<1dD7TmP)* gTJ$g0FVdQ&MBb@07Z1lq5uE@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/meta.json b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/meta.json new file mode 100644 index 00000000000..fca4d4b87d6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_commander_hardsuit.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-OUTERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..b73652959e6e1115773d047b5af3b504779de442 GIT binary patch literal 1621 zcmV-b2CDgqP)Px*4@pEpRCt{2TEB1GRuKMFct}aeg`$cQL8OBXaL^=9USu1{;6FM;fh1ls(US)P z_RxTkEY>h8_AyHUc3?j0#K_`%l&l0OKfr*+NAiyM>)pFMphb%oEn2i_(V|5?F3vCW zi}TCebnR!xk?xHb=a+dL&kzJ-jD~J*+ud?asT7XWLm1xT;`}oI@bP_T-;AD~_&I51 znZjfeAdYA7JQp`NAuP)VdAhrgwCVq%bJNB7W$rk=^0#ew;dw5CU<}W5A%)>MJ?zsG zF3vCW(-S`rf^m6mFc=|#yCCkwXLz%0!BkOcbpy;izfiUV(|pe za}h-mqNupX_x-hX$LV1-bo2ScY$r>g)hU%?v3P{xGZk$Zd$@8IojPYCMh$%j4Rn`;|&z+g&8d zT#Lq57oY~@$10TqC?w54c^xQ(6UVciUBUBQ37ryV~<|fP~b4?M)v(nW(&qbE0+_G$Vo(soW z?FNq1gX5f)(I3DX{W?Bs1rP*dgyC)JcZ{+tH*keeTv(P3CQQ4y!QFk-Vg5m1<_ASl zw9x|OJ)~c^4b}$1LgKyB$0n0NnAZy5v|k3m#o`HZJZl^TpQFDi01`3)>(Z}fj?tJ~ z%wRBrQYn1jFYloSW9}0{^QVE-K6CG#^VE!=c*mif#9k}Pp z6!|5z4-~u1>hxF8rv+r0DuZGn2z`ZUodyY}p4C9a?MWx~YzhjU)|O=oA3nbCQ24yA zdj=qkT;NASCSm}}+mrYvc8Z$;+7`ecY#AxW|N~KUL zT|4w}@8{ZR=o+0swJm^22_dymIeO;%*#9?ykzO9Ubk?>(%K~^TcAVa`rXI&LI8LuD zNf~ib16hOQp^Jf-)*#O$CRU(r0kZH>jR8qAhh^D2AAxm{WooTRB7Zl{1zNOd(V|6* z7A;!*AJOR0!k!_ppTg%Z;JL%|+}aZOCKx{;2PI^^K1t@r#fYXj?jGmWnSe07Z6pMv zdcbr2`XCtN>gw&@Pl20odgA9-S8vy7uVwPJt4Vo-EOu)&qeC zMNxSar8OM7EWU}h$xMKRw!g@Jy=+slE>FBvS)7o?4$`j9BmnxsS=$9XiW+J%z5=*|R47{vhDuP4~AKNRF}R@0dP2_tirdoG!g8d)r!aB~yB*mii_J#BtVL*S=e1MEWrWR-{0ASUHp({K-KH~G|zYdxSzIpQp`u#qD@B4x#d>92mc7v-k z0RW)Xzs7B;rg;7OHTwPj8hr*pQzaO;#+K=_L%;i3zWUe*N<3DT|33z*_RLd|mg TLgk-A00000NkvXXu0mjfFRcw6 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/icon.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f5cfcaaef5565dbd728f9c3c5e28f451d3f033c4 GIT binary patch literal 524 zcmV+n0`vWeP)Px$#z{m$R9J=Wlrd}LFc^lP95-1wkfFAPw*)j~vZpSI^A`&3AHHjrPVSUJ&~CzM zIuv5$RULxdB)!DuxaGhP7=%7a->dI?Ef^RW7#R3pD3&WXn=1Ekf9H}|y5m?9OZRYp z=Vnvoisi~(I^$3L?3+A_CKyuzAVf&9R4$4p>~Oa#odT3ntk+KfG>vWN7mM3=T$URE-ru)aTch=1 z-}bGdiyzm5#d770sZNqvTLXui`tNw&i!-L8j~}jrt;f5V@|7ZzVELDq^WEjzOVNq!1-k7acgUu#T@j6qXl_B zrz|&Z|9!HrHpo^8NP<9MOhum0d$pm{glQ^?qDgDSEX&dQds&rIJU^GM0sRBjWx~#f zVm4I{4*xj7%}s)}HOFPvS|dbwvIgi(-b=tGl2|(LhdwXfz`(%3B|ZVpQ|T3mI@Ub^ O0000@jeayg+XyGhzj)B4V@q(>R^Uhl5KJ?zY&M}2uXD_J%wC#*es{+YiT2m kIpsgqa}*U8Ewp1yPr7(TY}w;Yz&K&>boFyt=akR{0HhAYQ~&?~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..4d64cd05dd2f6cb22c199ba019c6b7e8fca7537b GIT binary patch literal 446 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zD?D8sLn`LH zy|q8D$${bc$MwGIp6ufPT6~4$77BmhQu}o%SKeV6pUN)5wchN^uS*Ri7T<8P(ax=# z@7b@hKjvNDPuUJQ;P5#%@#EeDSMJy98%!=t+4tL5zU1tm8zvT#?rJ>DT};n5r!#Me z*dyG=*buqyQ{&kSW|rrIm!IhsW|;8YlHvASb%xZP%IC{1&P{%MCT!}{b-~ZtFE^_A z`AV>bgmN~#?kl(}$PgMT)W+yJ=UbI_$;lcsM%RtYG_EnY1eQpwx0knnzj)nD>F=&W z%a`3_^3|`Xt$z7dvY>|J+PYJ3sv9$ZUAFt(J=4_%0UAE9y0>g|-Ujap_jecvgn#{g zt2*o1=9O2!$F4c9&${#Y+{Vj51=oZxh&;Jg&i2a7`m`BO`?-amzU@7bV|Oh~ZO>J) z9oOeJ&RGjW$_6+PqBN>nf2G}^v(-6;+K9kdUbei<1dD7TmP)* gTJ$g0FVdQ&MBb@07Z1lq5uE@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/meta.json b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/meta.json new file mode 100644 index 00000000000..fca4d4b87d6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_officer_hardsuit.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-OUTERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..1c8ec28bec9b3cfb373be3d7772b9053a6e214db GIT binary patch literal 1542 zcmV+h2Ko7kP)Px)z)3_wRCt{2TEB0jSP=evx{4=|Qb3I85{bf9sM0uzbj8*y?f#j2($!m>l*COc zT%|xtI%EeIk!(F$u5bnq81Q?~CVQvjlcJcPGtA7JnKv`QfB^#r3>YwAz<_^0Zg1|2 z+nc*W_gWW5syALT=O>lV;8fl}82hTeL0L*4j$g=mnzuD{w0N{CN(4pNa z0Ft_t8)Vr#qG$pkY(&un-@kn=E-%93`?s$JKc8jqkaB}GU1%}VhVi*yc-|SZ>|N>p zEPIFNond_LE7AVF>tdQNuv#tQx??0s0w64jaDx1Ik|Yqq#%i@xV)zikFf6s3=Mt7B zkfw{qdsnL^q}(7$w$Cl!n(yQ2w16P+;kx7UW5^on4Ajq)(1O4}{DmDL3!F}`E9a%$ z?EP^}r`O6B*y=23T}RObKY#uW0I)0pA?!VZ0Lt@uE&%{vzWjkWeg2N| z0qh9`z@C*%r`L$%=YzCcmp~BsNYh1W;_JNc)y0K70lMm@flT0#H>z zn(kjG>sxQuBg+y+nl6-t-ztDKU4Y_x5ctS*Sy+}p5cu%CZAj!6K;9of5r$#OSewJr zK^TU}b6H$nMWw&lz8mFlA#8+Ui1|FO&_9G$0ld5>BZ|MYmbXL~O1~*2>Levih@uJN z__{skJWya{uAc&7-R)N zb)A1`Uz`3x?NBrzivWNmNf3r%sR23$fQQHX5r0PWn_KBqD0ba(#R^FKJoj+jF;wX* zGsx3X{?S|*bnRHPZ^HQ8FQ(J$QtR`1T;?cOR}p}18a$glHSSf~(76QKK-nJu?|J*N z`PAU+-LeE$t7RE+$YJY3SpaFeC{3Px0a-wv%Q7OI!s|C-`L-AdVHZ5v;-PWNBeb*+ zXb51nS|W~j$9XRC@OVFRZ0933FUq|`U!WZ+C0zu{`~YYtUCIKeOPi7-%M!?QS$_D( zeZ8SAwDFuo2UeSn-V*FLbdM!s9s!NGzEVSMfvwDTgZ6LHHD<*rP1 zA8vv}{>8-qC<_4Crkicvw(Hs{aCs3Hw7sURkU+;l;O|wd4nau(6oaE^Qf@kkC|QG) z8${6r)9Llet$?=0Di%N`In{S7`vBSxG7ODLJAA|@3zfzCuV=$r#d{~1wK}?jPbu+Kb z@`efT0{2l7=HMM)-ZvngKBX#5#nI~Qz~_L|qFz9j`9|e1z(4@JF5lFy{_*EuMvSO} z)1sCcb&O1)Er6y$rO(`hx6!KiFjZl+1hVYC9F_o1(*agRofh$6sswET@SZ#!a~v}a zp-P{Fx8b)@X@7d93t9r;r6}sgQe%>sb8M&Rt2e-#Fu-mof_IGT<+4N2stOaRK*?u@ zXh^DFu{|ZI_fPbMuq*QbCeRiD%?%MjVx&GK)d#5h%;^C*Y92w$RLKOX3q+Y9pAFFF zzyS3*1wNh!=(Xpx8Fp-^uq;uT3E&fAy6-aq@xZ6msAZaZ_&9u;0*)yFDrsZThzQ@HLJ sQ8YQpRGP5`(2U-%>cPx$&`Cr=R9J=Wl(B2$FcijrIc}10AcK7|+OFWio2M*J0yp%J?r_l7OQ&uf1j!~` zoFNb+ueu?XlIBQk4vrhn-y$KN-uv{u?+HeX7%^hRKgMKe;NADk0a)A8b(TYW2zRH^ z)CnPxG6G<;)r0eX?F(2f*Up%lqR4rDeFGql=LjL4kC8IM+7^JK$N`*EDNoOjy+pnY zDQ;~`)9fjV94RA;BBv}DNEuOoHd}qI z%xw=?+oE-g5RyZC2rsRwmk^`%Ndf@Z=0B*P8Dgk5aFxN_@be(lVNR&!Rk{tM~ zfOkLOvMdXJxb(|l0-LR#td?t+B(u=V%Y?V~ekA+;g5EKNqYWH7ByCOqGFoka*4 ziub)927JYS8oVOMqM9trNRnBY{VY5F5l_#Llk+>h4E_YG<=V}^rS5$FD}_dk81Y}= Y7xh60B*&hM@c;k-07*qoM6N<$f{h0GNB{r; literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-left.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..22371c71250fe3c0ea6d2655199fb91406035962 GIT binary patch literal 449 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zt36#DLn`LH zy|p*5*+7K#!R1xK0c|=BPkB}LJE@=04)KcH@s?R7nBDtr+oTN!3Y&L1&)VYXd+NOJ z60hg89Xh&8Q#a4y77&Diiw2oVH8Ps@JNlKMUOw`}`~8=dsvD1OV_)f%nY8B`mn)-= zc)uJ&*lP2PwG0RL*WcK^ace{Gm7@M5QVa~&q8J<^!x$KzXGKISb1YNZy6$1zB9D1z z_g>@jeayg+XyGhzj)B4V@q(>R^Uhl5KJ?zY&M}2uXD_J%wC#*es{+YiT2m kIpsgqa}*U8Ewp1yPr7(TY}w;Yz&K&>boFyt=akR{0HhAYQ~&?~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..4d64cd05dd2f6cb22c199ba019c6b7e8fca7537b GIT binary patch literal 446 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zD?D8sLn`LH zy|q8D$${bc$MwGIp6ufPT6~4$77BmhQu}o%SKeV6pUN)5wchN^uS*Ri7T<8P(ax=# z@7b@hKjvNDPuUJQ;P5#%@#EeDSMJy98%!=t+4tL5zU1tm8zvT#?rJ>DT};n5r!#Me z*dyG=*buqyQ{&kSW|rrIm!IhsW|;8YlHvASb%xZP%IC{1&P{%MCT!}{b-~ZtFE^_A z`AV>bgmN~#?kl(}$PgMT)W+yJ=UbI_$;lcsM%RtYG_EnY1eQpwx0knnzj)nD>F=&W z%a`3_^3|`Xt$z7dvY>|J+PYJ3sv9$ZUAFt(J=4_%0UAE9y0>g|-Ujap_jecvgn#{g zt2*o1=9O2!$F4c9&${#Y+{Vj51=oZxh&;Jg&i2a7`m`BO`?-amzU@7bV|Oh~ZO>J) z9oOeJ&RGjW$_6+PqBN>nf2G}^v(-6;+K9kdUbei<1dD7TmP)* gTJ$g0FVdQ&MBb@07Z1lq5uE@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/meta.json b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/meta.json new file mode 100644 index 00000000000..fca4d4b87d6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/OuterClothing/Hardsuits/space_sec_pilot_hardsuit.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-OUTERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..219d632989f18c4729a4b609dd35cc30e7fa4709 GIT binary patch literal 1152 zcmV-`1b_R9P)Px(I!Q!9RCt{2n%im{R}_YSH6?Zvhe{^NoFqd6@tr`Z!j3U{0)we3>v&?ArH!g()3}Z&e!6~5F8}lISLo`q4(j&?B1vPc4Ibk8!7~iAwBb6Qpk?0+ z@Z#lxF(Xv{PJ2bJ52Isk{h4>B3+=R5u(!X9cF;i-hjO~Hz9|DSkqxST6*~Gq%qs4C zffV0Z-$WFLNYYqdJOFgsEAYJluH%VW1JKd0LPvk9Q`=iRqSIbM7#$Zb7RVh}gQCo! z{r`IU$K07PNxzJa{*Tjkh~iLAlQhQO{;munibH9@-u^CFQ53fLtsOEF>Dmp`0g%S=xAh@T_pW zE>-%I;Ob8_fKtx)0sxRxb-RkXUpXapn5JJwN1ruF(P&KRMvp<7Ptw@PBd|(eMOT07 zAXr9qwQAlZRXV!*EVmZ1ESk;&M%gKNLHFL+ z^`jar4H~*!35U34N9UuMS^h?NJv1Fv?Ex_DzCOb_xJkd(_3N!`JKp zE?b{v0Hs{3xrC;(fMJ$4n$7~6ty_idrZAz;G9XU!7mJh8$HIDArtPLMq0bux{j=vU zr5;Vo+f86XpYg#wHq+_KZ16;=w?VuwIl)wM^M3$uM>Jo7sPtb+`_UmH+dATl0V|EPe%Fx>2p{%*7 zrRX{;Llgs5hg5Bfhua{*&H%M5giw0~bkdN6dhsgdm}Z4#fZC#>R$wWhi|PrOM){vl z(ij`-n`&dk%;#bmpf)Q2XFUPaT31Yv*+%o>sN0;^CZ+RT=|OXhL)yPdw<}lSN6>#Zgs*bj$H@ z&&Pgiqb`j*cYOePrS|CP2zT!KI6VBjmRI3!_ZRW@O@h_cRaqFNQn}F%5diptcMYn| zx0*|GeO(t{)@n7Ev@ageFyQ~jTn143(d|$tq*?A2;G*?CfW`pz7Pu_(7<>Q;h8h2O zEd%nVgap9ln{YDvSm+hvqGiCi0O}^!od4F-HsCA^VEiM4%P)Px$S4l)cR9J=Wl)Y-hFcgJPN}(M~2{?`=K?5BNA(;G-M+gM+6dgMBSvqv+1BE!o zPhm+`yp)X1q)rk}abjsK=v(yT%e_bEN(KUfK;S&ZCv7SeMKG=(T(*zLC<35Af{j*Hn6T$IR*42N1d=XG*m5XE{JC!mA@02Z?)gyg7{ zw8a5{5{6-%c(uey>D%kO=At|+1^`@?Rulm13?&SoUms4nog6U5D_m4`vzPaaqO=e5a&O`s9%e)1rBgC)Z#(@tDugQ`ZPs(3w)Wr8KZjQ8YOy|6B+bU+oFM!W}WK^;_-oDU-YyXI0jpv;6)e@aNAz@t65Umn@;tmYn2aF?D#vfcZA4eOp2=gv6KX!nixP3x73ZGSw% PLB@Ex`njxgN@xNAQLU$Q literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..8d2cc5207782229014d44d8560943c50f4aff177 GIT binary patch literal 400 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zy*ynULn`LH zy}5g0vw;N5gT39I|2mjF0yu+gS2?z>WYcKu;7bT$=+xVEoWFPC!8;3f|5Z}vPrG@- zm|H*)1{edpjvhCD9^*52eq)f9)$@6q);|5~Cwr|__V%{ct>3CP2WhnlT-f&ZRsX+j z-uDC!#hPX3#+;t5mTSl6>^aHw zYhU{{se9EO9II9}bsVVfubjtU*=hUjiLaP~(u?16$7byQeEjw182KD?+4ga5{GAg!Azn;EX^?erOV~eCnv5NQI8V?p%P7S(lZ?}E^`Bhu? zxWK{luv;nfl&dARa*fVUjdjSJT)FNIlh^Ds#i`-}KpE}b4VTnD$ILl?fA7LACu`0w lWAd7H#=cM38uy#@v`gQu&X%Q~loCIFp3u@3+M literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/meta.json b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/meta.json new file mode 100644 index 00000000000..91852e5f8b6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..58ef0b8dec85520865b99bccacfe9fc38e37daaf GIT binary patch literal 1457 zcmV;i1y1^jP)Px)Ye_^wRCt{2noVmPM;OQdDh-ljttzXwR;#zjDHb%Th;fZ$*Nq!|H8nMX=GI%j zKp-C>rxxd$vreT@T2g$;A>h!&1l;08#(@o$WxcE{$&nRFZsXJRAkS!5@3Yp*rQRQi z)y~Y$|Jg^gGoyVTz{JGF#KgqJYY;3IeeKe@`1O8xBeJY*QrQcJ-OQA4v2m%(q_>z@v zym*GUr7}KtIxu&Ao|Qj+{yWN*3ic9m-<;4&za6~#T^lVgt&o5}h*Ua>bSBkwvyD#i z`vRct^*)!q>NlcC|HEz#(wP)H?rg;YfEiJ)R5aqWUVYtZ>7=hluYSi#aCvEkP%$N& z0RZ@Y0aou21ooYl({^*$=drxBa;izOoqj5vZ2IWc@8|&P#m8&w*w1AxPSFYgOtkU4 zQ?z0~m$f`zTi0B#mv;K?(4*hc0jsk`+`kjTtLP*Ez$^JWc1G)8MJI9pP6(^B#g6T} zF$jIGNy;Ni#4GvOaHGp0Q1iBu&A`YFQKP;Zz4~1z!A8^*O}SEG!)#|Oj&4J=AE@;k z%MI7J!9_fxL~L*ox+{~Ti$q;MDE)Rv-afg8%O{t^BojY?@A4>)jw%>)dr`#VRrswi@0`F1e(&zdwaB*1B9GL+Z?JdjujTjn*yq!R` zT1CE)WuI!b3VAyLF*M5ECzk`>#C9=rBLV;@<&IIvD=6iT0RS^MB6t(qW|9-RAj_yXKSugw8A+eXzGn3mpFjkZihnxnnp4 z0d~6`xx@i?pIi>eD76{?uvFEQ({oyHBo|KBEjr`V;|1>ZtOl0@eBS!{ONTx^Hr5+~ zdW5yo*E0gS{Py=zMRV*{-fxW1=W@W|yAlrHl`!&=v#D+n!~d-H88*1srbGSxyy%;l zn3$NDn3$NDoL4-eM5ZRE|1;Wk>1E)w^ZuK@u0o!_uzi)@)S}gU3AyL~xE!EPRsiZb0j+)wqfu)r*$m4L;SI@iIe`As0e=u1FP^b-njbJI z8uh%APm?wB=hkM=eQ`P9huiPqz7hfeKacMedliACA_yob-Q+Ac(m60 z^;`~Exc3_SIqfntHR&R);`M_dok`*5THJz%aR5&M0K6L_o$-`rLjY~klu@X25(ZAI z*U$8|^dRyBs2QJH$MqL?$BREF@)ga8#{9bsO#B?T>rcW`m13MJvYK zUI4X7u`J6Nb9)hs{V|ZOa3u0MDdZJ|!(kSfrJ;I56C?oOJ&G2Z8!+Om?+6EV^Nm^~ zPP^`#2Xr{#|Hi2tK!+cF90m#1Y|K^QMb|P&=K%F1a8}f8@B&bxO2<Px$xk*GpR9J=Wlut_=K@`A$7C}LF39-7_Y_d%(c<9N4Xwnp0auHDkZ~Xwh_k$Gl zJLD@AFWw@JOTa@;9s)+q?)s;;A?)ILdI%X33ht~>=wW`Boq6--y|?erfJURyXkI|h zvc+@zG`vcq+-=mw@cc+@tXHJdoMnrR^$NrDBhhWtQwK7ms#vXl6aY)vEJ5f~aEe^@ z`;=W*?jHvO06ed$Y*$I~O=(q_hQZeR4^rl}Tl^kIEM`oqn>8svJ^Miv$J|_Zm24}O zU~hYevg_itTT)ittYI3)lyk4$qU^ftZSSa<1z=W1$q)Jjq0dF9C!GUCaXjUGe4d8H z4D9b7h+@H|;1mJm7r-J2KtlF@(_{ z-`<7XKis9Vsnmp%Og35+$1>Fyot`YwKVzP($XT|SCo9IUVz*Hjlk&7SQ>E+e%Bl!^ zzi?Jw^Yj$6w4CSh=Pe5h24neUPwfHHXf&GthCc=Qr!6jktlt0t002ovPDHLkV1nZ; B?qdJ| literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/inhand-left.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..1e169ecabecebb06131ef5a51111552a56458a55 GIT binary patch literal 521 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%z4|}>ehE&XX zd($v)wSx%j1?ktpyNq~cy_%0G#icQu=w05-ziH+hC6P4;C%FpyK5yE%G^Au+yh}u< z=!OIS_Vr7uwTw@MKTesN3JwLbQ^&I@1%=|y>%&jjI%5yXCiA-g**<17AYiz)EQ3cJ5mD@t0mj)z642 z-%Y(;{#@FlS29{9h@*=hki&rGGVc$y=imH{X0vVUx5Y z?$f!f=Ynv+`gXZhUBvv!!YPJEVaJ(g#Lj28Y}jZO=kn*yFPj~V8P`8%oxQMsN#uO? z?<^VDpC9C9xUlwovrNM>1@;9%!AcIMs;`wBOpRX`D~Z-Krp?Gr*j2Z34KQvQJYD@< J);T3K0RY*pzNOnGz8_C;z{w^2cxhoJXUU1q-}J~@T$T^_t4 zgF2lwg3VVUfn0pRCp_Qj zd-=+)Cwt|i?!5ob&|uLgc-(NywG*4(Y`Ol{|LBZ8d(9WDTD5ywX2A8YnYo*9&Z)az z+6&}`UcGzP&*0FFJlQZh_zuCqLew9 zB$CxGGgv2o;xlt(;5aPs`KQe5uTr<)iXCvD%z5|&d!NC*^3QcYb2~b0<@#rwO^eVG zyYaT{#k%F!m>K?m5)y=hiR?AfGj|ur_53h1Dt{WoaNq6Ox;b1AZlCxg74O$}?k7m} z3mZ^!e_JvChuoBRU5^W|OVGRn9jd_SW$<+M Kb6Mw<&;$US!t|E_ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/meta.json b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/meta.json new file mode 100644 index 00000000000..91852e5f8b6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..4e9e955fd6107e11f36532a689cbe5b7e90e2c3b GIT binary patch literal 1292 zcmV+n1@roeP)Px(#z{m$RCt{2n$K_IMij@tRE?n6-WcQ`G2Tj9N9)sas+3#)`razFm*nKtvQ(7; z1B$(C8-lrnD z*E59m8~dDeHoa1coL@ofFw?#cQoi74FK4-+P*TVIEE8;>AS9jFdVbai|W7XfILr;#44tjO{cMLZ56(wVBN?T8UQTQ zDGk7q8MzA8ViJvoqu@Dx0BqP*_X%G8S0exb!oeI*cx<%LEyBSZx}7pd9fxP`dr~jkC>_h zfHDMW%pDT)uhBxc*t`K%{UloA36EU*d#?ljuk1Ak5J|LzZZ|>m0PR<|=U|t<2wdTE z9A?uI3;Wx5e?_u*W_|QIQj5D`lm){nv#m-{mkH)U!$L19JTn>o8C5XQz=v?YsZRZI8x7KI0&}FZs zs^5PUeThUOkw_#GiA3^)LV5bPwu3mNHi7#+3gzpPIK`Fi6xEcJhykL|KS14XLTRfk zBg~ta;c@__s)2Pj_V%v7suwT{%Hi=`lNTz8pqhj~e!qvJWY9YreBXznXk2M|p*Lw^ zIA*D^&3b_^gGZ4|?v3jiTQvcBo+1p_g%Uh)Ie>&H59fMDElqwdsN>Vw7_Mg^9Lxb5 z%r+jlBY-6(?bW`bZ4^kH7D|heHc-zP^E!Y#Ihrpr7HZ*Ojyx}G1uWBn>+xr1cyT=g zmgzuIv@#+GWiG&Vom!#9zHmFBT9yK=@4{P9)lTBHmNMTL?(Fa+`l~j>h65Dmxbx3J zPn}5wOrmla^1dJy%%^M{Lh0&Lb8IcHA@E!dUbmaj9Tle4!=-(36r*0^(!PLc^`JZI zPJ4LZazGL-Yn7N+wo{l^52j&aHXXsT-gAkIU|H`mn~q=_CQPfhWe;y;aIe~^PRF!* z0Ln~p5Ckx-9`5h|Jj-&p-~X+cO-Jy3pCx7~Re$mtp(i{xs5YRZuV>wJb$(N;qpQN5 z2V{}dVGf}1qv3E)NOQARffu32Ak6{QA@Ej|HuM0DFp2noFXVu7rX2xzdnd$6R;yLw z<=}-78E|e&&BKSDumjdnaN6?NU92>VwJj2f2>$|#-s(lo+;d6*0000Px$Oi4sRR9J=Wlg)~QFcd~lhk;6?V1?F-o6(<Q1ZKSN5SaZ=noSs)duRXS<5h7fC0bX=!xo3Y zY{JMm1V$dV-M*B(Vq!Kmalex$jw6yJK}v}#D|AyM7Va?mOK*s0S(Ko z0I0IUUwZgU4`3L_@i>kE%rg^{3}{`UN|)m)M-?rQb3Em&SJ9AjJmsDEE#9Ad#!~}* z-?OY22O&Jf!W~2b)~g8J)F@h1(IP~RloG&v7x~>POsW7tmY%tCnK=X|OV9XWH5k!N zJ*o~|xy-T@b8EvxCjA0cR`}t3So`685C;$o7a_bqIsKb>#N=Pl;}DqN1^{$ZcW z>bwmU-{0M9x%@eU5*%cyM;%xD;GA5~UYD_`G^eg=xuXoMpFd=Nt@Ja?P^CB*Cz} zSC54*p6Dg!0rwt@Nbgd#ve;NkDWa(SvNak&&mwh*>|hsjy`LYpY`!A$9Mkn zt;a>WkN0owJvuw0N_+7Xrh|JY< zKkiaFuiP<@|AkQZc1ivhb#f1Lg!i=AsioQMUn!OFpGm&r_x0CGO1ozGugZIJ_f6Y- RV_+08c)I$ztaD0e0swM5!g~M! literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..c3a23e1340530c121d7a57390cac1470816d4d28 GIT binary patch literal 424 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zlRRAkb?y4hv`8pBv`do3|BWzw%C#V@7uQO_De4p#9mgp!1l;q(pj~BjQ zYNGEZorOCK$XFul_SMX^s|V<+r}nJ(?#0U{h`aL3{jR91+!gU9rR&w#=eHAjj{A!$ zwJ>b>{pgptpi_d;yf__QGuN+XSMv^-zT=tG^(t4cJ&Je7v$>6jSKRx4$mrX)gBA7* z{1ktcmY&;I9JrUa_n(iI#45)R0cH;Jjqx?c_3BEyTe@D7&@*_t`njxg HN@xNAX5_(< literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/meta.json b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/meta.json new file mode 100644 index 00000000000..91852e5f8b6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..217afe4142642ed9d78a10e9d93d4d98a51f6f38 GIT binary patch literal 1555 zcmV+u2JHEXP)Px)%}GQ-RCt{2nonrkRvgE_9_!NiPiu>&jxD>3+tko8v(T6<>r#3Xg+OR2^e`AZ z=8!{9xi-D`w8JQ(r!m-}P+AIw;oD&Ax{{S_E;+bc>c*BGB}I1QKP0-bjw#xpxJr{8;U7vt#(6qN#=EiH1@$*W%~D*%A;^aMNqbnyuQAQ}<5 z^(_~s&I3SEDWFtV5RHiJXuRfx38b%8G&GwHkP$$u<6f^1LP+4&f6q!GS(f#f7)Mbl z003fQ9MOn~H=CPnosWre422^HIwXd|5!QJjBrtvY#Kbs+kN~ZsAtuHl%d%zto(9OW ztV@!Fsp-q`dVMAn{C=OQ^IoqHKr1{C%7meCL?2I2usctX799bg*=%5H`Z6R*vTQ<6 z1HS+62V^oCNRoub$61uh3NwMAA+h*4%dU-_Nm|kGNi-s|&Mz;mK&xl~03jr>um=FG zqG5Sy1(GBolgVJ=#!XB0cQxSrXj&IS0_59wa4s>%8q}$w0Iig zz?xb%Jx;3XHlmTv<*A`t&^&9ZCH<~+(r-2!CIcw^?dV&23=(t)_L~Ha*PX&xKizdY z+STWJVL1vx4~7R&RkzXUxCPCzH$f-#xeA{-oz#_;*AP#iK%-H^;K?X9)=TjD0-*DM zujCvxAo0;I5O)fEU@97{8bT(3)^I)=O;S8NZmqi|kA82Jmt=mB8lC-5>a{W%y>T zhO?=Jt@^kOAdyhezw^i`dxGHs1VaJSb*E7Cui^LmaV!u(Ro%v`e9luE2@>;MT2MjxB_CV}5>K zZ*KmBUw``rR(FE-!rk!63zzgyQ=HXHc-vo8Pu_a5AB z+f3;NSK-MEm-Mf`{t^K2=;4n5VA?M4hY8eqqb>l%W2XS{o4~asHj+$0k|aoy1Yz(v zONcP$4fF%bMKEs47K*F3>f)LM78Vwe$z<5~bBQsO$_lPsxsF0{6|V|;TaDnMR^P-& z@nOVcr*QAVUA87jkuY*5i8ZxsxjrrfGMNnie71}~vP%Gfk4I0NLa-kOkQM-zm{lq( zZCmzM;Ti(+?K>>g7H-@`OpLR}90u{&DO1M_#np}p6rJFT0NSrNW@!Cac)Iw6Wv%hR zWk6Nk#+tgDg7)yyeN0bX)ekEQ3dL1Cd~~0+XH6}GcY)Mae!zYW={KD;9nDeL&s|!U z9tubLvOI0n>eL>d`nVzhfGPiPC>+txrV?yR%IVEfqXy~jZ4YmK+;44^r7?Ii3ZS)9 zoXh1fcruD?_V>QL3a3(I`o?+*$z+mk%+gl9qX`l~D*=ge142PRJKwL)@6`$g{kA&~ z*f8M###Tm@citq0H?U>pL6MXL=_043PTO|)e|>kmi?z~P%vsn$)o zO1#)iENO2*ziDZ{{m`>*z-|<@r?mEi9Zh|=EiNv0_!s583WNS#*VzC7002ovPDHLk FV1n~c`8WUo literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/icon.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..de107e46e8695a9fa69db7d3ddee1b41dad1a956 GIT binary patch literal 436 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6B?JY5_^BHZ6jIq1dg$kVntPAiw+wIwQ?U(|+6$+f1*RYRof2alZ151Zdo zPLAIgZA1lYSk`V8zc}xU$*1mb2mbnQ%g7rthZzI^J!G68|Ti?$&<3-RI_i z<37IXybJQX)|MUj437BGp?sb_T;Zb`SJ(R`yZ6-3vbprR#Oe0jFSqrcy?b~3)voM& zVUwO)n!6V^*v{H_{<;0EWPVqR1rDYT(^9X<&k5RlFG6b3%^V$5cR88wemAlLcmqUO z`3?8gCY(&=V6=O5VtTRRBIXD0+^?ILnAxPuPiogVzEysS7h|QfV~V)g-w95kF6<7D zYqsB1-+Iebp10ZN+(~1pMa+B7EaSY!zE@2nj`fp;`uQIPs;jgGTpBO9b0l%K2K+ZT zV3lhz@uxXA>z_hVZOsYqa*Ko`Hq>88jqZ~M`nIZL9|Pm;MG6M*tW$yE%a+D literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-left.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..00890662a9026c44b3d830a036c5463fb523b7c1 GIT binary patch literal 444 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%z%RF5iLn`LH zy{XvO>>$DV;QCoEm#Yf|LPHCfCLK)JadJ*$u|hSU4BOQu>Iy3vx-&2Oo(ZT(t($ZTt>%iImsU1nbPZ%+*mBMPcU1P9 z@4t_JKGxymaM@(_B8>%8s&4IHKYLlE?o4yHCk!!aWs`2dz4mJ#|M|}XER4VQ9e-MM z@Mn$N?QQb)?pE(*Ct5QwG$}a99Pj^{wwaMZhL3$q?(T|vI+Ij3dQQ4={rUe%?k+I! zL}#Vht&>SEn|j4wvp!R~>1J)oIO*-i$-)XZ<)BP<14#@-iy+LjtA0;7Y$)78&qol`;+0OkC@0{{R3 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..869ee2c049f89b410e4dd553c28d5b1c05b278e5 GIT binary patch literal 466 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zdpunnLn`LH zy=mCj;mrXhz|9I(Ke_J*GvWfZ4HCx|B-t)h2;2X?vAa8r~)@y6Sv?Y=kOgU7x`|Tgr zTfb&qmuSBH^2xK$J2lpqGfz9Mddb8!P$a-B(L~BovvrZihWqb#*EdhQ_2g@w!@TDV z49REC-jQhjT6H(@&ATlpU*B!mq{Ci0&snq7c>kQ~sg@O%Z>534e;NLtJgjd#*Y9qH z&9MRt7ZKMLuceMZ7HmJv7#jLDi@D+Y=c@mV3<9o#X`63;tudO(z+g6;ch#y_M%C)~ zCYgH*O;_pMZU1idg-=2-&j+4wy(Zz^(LM2kRPxI9y$ALJY0ZypEkMCebA>I(BE0r6 zE;KzBl+#{cRG87bvE_$6L(6rE{jAavO253%{fvCEJy+K_85l_np00i_>zopr0CjrL AbN~PV literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/meta.json b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/meta.json new file mode 100644 index 00000000000..91852e5f8b6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..43e5ad38046240f360a0d3671293bc374673c2cf GIT binary patch literal 1503 zcmV<51t9u~P)Px)nMp)JRCt{2n$K(7W*Emm87uA@xpPWe*DeFKp)v)99tJrC2j`R?wp|RlZo3uQ zn?o-xIVP8)Yr%g*AmDC0$R`(C9|}9g5TfE*W7Mvb(zuN?oYT95`^t9WqP{o;<;_EL_(G z5Pmp8>I3BSd5XoNS9j~yE#~Lv<>B!4Ez1%INhXt`P$-Dm+1W#N@=E!sFN6@4N~Lf4 zQ1xxw_Qd3VtJM;%R!dYW6>nb%A#B_BjIwQeC`MS8B`TGQ_dCu3-R(~5gs)E0$aP&D z$Dvdz;kquNP>4_{M73J=_FdPdR4U;(j+_cZ#c>?g*4B<~v$nQ|<2Xv=9_s+xwuNCB z-pNZta_HZiv^f-g5Q&MfUb~xpXi3E4<-0|&WXg{*qtk~S#1n5qU z`;TQ=UKUtphBKLrNG6jbi-=@0DKeQ%PnO!Y?Sazb$}2=n)ASOR>2#V{EC#@X2M>7h z;swv1J@YjZlF6i)o}Ol9Wd(p*t>$HorEMzNA*D}Z(9Zstrs-v2YPA{wD=RB3EiI`I zr_9pQQqRdlCu1~7W=iQEV45cP?%f00j#yq^=H|_tUL=t?_fjcvG+S^pVS8 zu2L}446;p(CzWxfBWOK!+nxpe*TpofBM09oxb$@{4769Ux~&> z@_D*j>nM9v##4R|xDt(t?)@86*SwUJ-^tN#4XJz39@X)b=c`<$ap`hN9{^v;k4@^ycFSfU;7>3~`W@W10*98&)E#8gEwE+{6&SP&>Cx1|DBBBj^@-Tn{ z{%@Sh0W$pLbQmR4^Wa(qRR($t%6mZf6!=`UZHNO^-qh9m59EOMqJ%2&`JJ%SX!fjC zQsvYyLehXy)7Cuw)En3VohSg6SI=SbQB!nm2?!X3e*r4jnrTr1%kBUG002ovPDHLk FV1hG;;{^Z! literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/icon.png b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..28d1954fba9f53520a4e5dc2f96ba5953035c7ac GIT binary patch literal 403 zcmV;E0c`$>P)Px$O-V#SR9J=Wl)Y-hFcgJPOQ9VyloBX7iyKpCao@m!yg{ZsNRsF9lX%LgO^e^a ziw!}V3|UGB56W~p$>8+QD#=uRi)88Q+#g*T@OV6)|IUqzah7EqjYgQwW>_p1-B~Fm ztExiVw%BgBPMS{6l~N?h^?FSyC9U(#W$@zT#Y474e*zAN5 zBuQfojWJY8b#sywLUdIcs(m-aNNbI{u2GgH;y6Yah5&%3X}Y=A8f95JCwKdsfe@mX zO~=duQH1?|kL7aN+p`t0BuUb< zzc{wZY@-!L(LF!gq^_ESn$VKxIaaGx_ZC}Xi=@`eu36tp<0PyPx$tw}^dRCt{2*+FW;KokbxzeR~&z=c~k?s9iULs-AHAD-8Bjk>PG_a2`29hD6T!<}e*B+1V3Itm1 pv0BUeXj<*@Xg2_0drU;by#V&FmW^Isb2b0~002ovPDHLkV1h_?d$#0?e>}#jDCf-;X9@=Wa zvwzQ*)t)V z8#!j*y|2Cg`qwCW{;c%RWo`$odmoip^-iyHIsfc!ZtvSN z?bA<%w%_JGCZQw7edc-bmD1i-tJF-H4t%bxwq{^>wd-GbhMDtalZ;tuPi{Q^q^mCo z1sAXU+-6vIakqHJ=iFo)tNUih7JmXVT0V0y{LAf$t=T29vF5e}|HC_s`+!_tDMp|Q xy*X|NfQsHE1>F7x)NHtdnISKs^Tq#9;?*ao_3rq-kQo@M44$rjF6*2UngDFJ=ZydW literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/meta.json b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/meta.json new file mode 100644 index 00000000000..91852e5f8b6 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecCadetStatusIcon.png b/Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/ADTSpaceSecCadetStatusIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..ede1da86be7e12276e9018e2cda9206235fa50d4 GIT binary patch literal 188 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1quc!9Y(J#}JL+O=+w zeUg`LIO0&$qwwg+#>EM;OP4N9kYd@jd$**{nl*~Y9y2LeimhNXa4=_NnQ=fx&LM!2 eF<&m3g<;1N*XLeVrYnGkGkCiCxvXnT^;Z1X&W6Q@rex>^6<*kpr)XtQH^x%re<76-Kh4xXNz5{DUXWTmjaU{E>E yV#>keH63&T!{)N@~T>fL}AGI+ZBxvXQGc5T)-&8s<7Mf$NT&B0fKC7ZYl1I jnh(488wz}QX6VMCH`UzPp?dc|pcM?Bu6{1-oD!M<nT^;Z1X&W6Q@rex>^6<*uPPq|TZ(k~0?6Y+&F~ z*nIF?vxBE6=L|MR327B}b4GQBl}^`qnH3Bt$S~&1C9^Q>O%9ZQVy4guw3xxu)z4*} HQ$iB}8e&0$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/meta.json b/Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/meta.json new file mode 100644 index 00000000000..07c504f62e1 --- /dev/null +++ b/Resources/Textures/ADT/Interface/Misc/space_sec_icons.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "size": { + "x": 8, + "y": 8 + }, + "states": [ + { + "name": "ADTSpaceSecCadetStatusIcon" + }, + { + "name": "ADTSpaceSecCommanderStatusIcon" + }, + { + "name": "ADTSpaceSecOfficerStatusIcon" + }, + { + "name": "ADTSpaceSecPilotStatusIcon" + }, + { + "name": "ADTSpaceSecServiceStatusIcon" + } + ] +} diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..f7848f63f6a3f7bd57aa4fd8430f34fe515f8f04 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=6`n4RAr*7p-ZJDpV8Fw2z(}(} z$nbp5(;%OhA}nvcJB!#4{Q5pY)s7FSmf^wbRj-WCcYC$QCUJ&dy?s~7@%G(cSG*;j zu7CcfzRmY+uSBA7{(&z~+t=O)DF=cRw|?Eu`Tc2Sb<0cLQu7I$uH1Dvb?qtRgW2MO Wy`l3x=dP{=sq%F7b6Mw<&;$UHibqTU literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..82b5598806de72b5cd2ed0cb65cee99adbb58df8 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=Rh}-6Ar*7p-rC69V8Fw2AmW3y++4=+d%hUb*TI&yrtXKQRQ{ YXFb^-I$!GNix(h8p00i_>zopr0QOu&O#lD@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png new file mode 100644 index 0000000000000000000000000000000000000000..95b3d54c270091387e888743faf2d53d147acbfd GIT binary patch literal 355 zcmV-p0i6DcP)Px$9Z5t%R9J=Wm9cGvFcgOWL>VNqSimg{q+x_BXhf<0) z@xnDt({wkl>w0q!5d|60T0SielL0c$O?EDNy6^ZxpI6?(hi zW7yW8_nOPHWEW2;%~+usE1X*Ctp|OABRonViUA=60Khr-JzvJnSOEae?HRz!sahymb5?>HQjdrpfuUY^A002ovPDHLkV1hb- Bj{X1u literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-cadet.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-cadet.png new file mode 100644 index 0000000000000000000000000000000000000000..8ff57854b738f42a73cb108945ad6304172662bd GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!ZkMo$;VkO=p;mjk&P6nNMkTwSWQd)mB1#i^BA z$w~aIm$Z~u{b#=U;ox5$6^4fUtAp-dEzw$1cC_E`&#_FKm~7c?KlH?Xyr#@+_sQ$n zYp52MwsvXQ*YEj_%uizOI?P=qk)L3xD#I6W>oMcKkGzZw40b&kZ1#?EwP1^tf literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-commander.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-commander.png new file mode 100644 index 0000000000000000000000000000000000000000..8182e373c3e749a1bf6f458ad0ea6273fbf194e6 GIT binary patch literal 629 zcmV-*0*d{KP)EX>4Tx04R}tkv&MmKpe$iQ?(+M3U&~2$WWc^q9VGLDi*;)X)CnqU~=h)(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iFj@rkY(bK-DZG zorsIM{E8TOMGpcPz$`)%GxcO*kxkDLhl#~f2g@DI%7#ijMI2F7jq-(@ z%L?Z$&T6H`TKD8H3>LKI4A*InAb~|Bk%9;rHEf^)3sG7%QcR?2KknflcKj)F$>iDq zBgZ_dP$4;f@IUz7ty!F$aFc>@p!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A^GSNW ztwoN2&^B;!-PYti;Bp5TdeS9BawI=Zp;!do&*+=-z~C*=x9axR+Q;bwkfpAcZh(VB zV5~&hYaZ|J?dy{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U|5egX4Ge^w;0041GL_t(o!|l^C3V<*S1<+sd zPNflV6;}sWJ(uEjyg-};hbn~@MEwuCB!z~23J?+folCvwgIKJ-F0;!SpiX_fZ3F-? z_7ec08}w*f&Jfira`HjUHbl==G{rY?TKR45`w^(BscNwZ9{+|!L`1X$RS7&!baHcE P00000NkvXXu0mjftMdp3 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-officer.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-officer.png new file mode 100644 index 0000000000000000000000000000000000000000..8556ccd9e20de3fbfd490bab4a860182db717624 GIT binary patch literal 630 zcmV-+0*U>JP)EX>4Tx04R}tkv&MmKpe$iQ?(+M3U&~2$WWc^q9VGLDi*;)X)CnqU~=h)(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iFj@rkY(bK-DZG zorsIM{E8TOMGpcPz$`)%GxcO*kxkDLhl#~f2g@DI%7#ijMI2F7jq-(@ z%L?Z$&T6H`TKD8H3>LKI4A*InAb~|Bk%9;rHEf^)3sG7%QcR?2KknflcKj)F$>iDq zBgZ_dP$4;f@IUz7ty!F$aFc>@p!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A^GSNW ztwoN2&^B;!-PYti;Bp5TdeS9BawI=Zp;!do&*+=-z~C*=x9axR+Q;bwkfpAcZh(VB zV5~&hYaZ|J?dy{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U|5eg*#Tsukt0044HL_t(o!|l^i3V$}EUO-~C_O5<~Kp36Z*iin*1&riTUEl^cb)$tM3W3S`rjo|ff2mk;8J9UyszpG~` QLjV8(07*qoM6N<$f?lr;?*IS* literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-pilot.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-pilot.png new file mode 100644 index 0000000000000000000000000000000000000000..b8f3e8596928f39330e578f0fa46099356c563a1 GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!V5_H#V@QPi+slDm4GKJL37>-|Ufg)ZxZ`+N z7hmYKB*#>fiB&KE$8DRwbKzu0hCgwFj}~tdGF!s__`>A#9g3p6pZV(6_m z`)j202LaD*&-$)erN|eU3mE%u-dioTYKioYQ?K5t@-LWj>;C-DXMTpC^sbn;yXDED j?fVoN7!KSw+{Ums*xGf$y0uGy4r1_h^>bP0l+XkKmO@EX>4Tx04R}tkv&MmKpe$iQ?(+M3U&~2$WWc^q9VGLDi*;)X)CnqU~=h)(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iFj@rkY(bK-DZG zorsIM{E8TOMGpcPz$`)%GxcO*kxkDLhl#~f2g@DI%7#ijMI2F7jq-(@ z%L?Z$&T6H`TKD8H3>LKI4A*InAb~|Bk%9;rHEf^)3sG7%QcR?2KknflcKj)F$>iDq zBgZ_dP$4;f@IUz7ty!F$aFc>@p!>zPKSqJTF3_yo_V=-EH%|cnGjOG~{nZ9A^GSNW ztwoN2&^B;!-PYti;Bp5TdeS9BawI=Zp;!do&*+=-z~C*=x9axR+Q;bwkfpAcZh(VB zV5~&hYaZ|J?dy{D4^000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j~U|5dt5Ej#y>@004kVL_t(o!|l^i3VPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0#ivuK~z{r#h1@& zB0&(wE5^%2klbAGvU`|C6imWiJmxjx`>na>0m2>^LdYMYNaipJtg?a!ku~lTiR)MC zO1j6Mv1g3Q4~njy8N0rzX}hbp>U-bj(}yX!;_Z0Kd*=G;d_$@O^(?tyZbi=@8m{KF`m^F`LaOy!%BtbTC+2TLl6nnZOzN_xF$L z5>+Y{%6&Tcsk%!%{k~{)yIuBe8CdkGR4Va(_%`JJO9li9?jP*u;w(v=jb^i{Jku8p z0TLYk;4TOb_@Z+I>B5im&@E*1-vD#R!e!NFB5U&0ssQ*!F4t&0JGg@ zI`5JJ8;O%JE78>ttD?<-Wa7gzAg}-|KrmP2`C_rCt`LpKV+zBN`u#p(rG$AqMXSku z;GBWdXMY#%&FS|BUr51M{|lQ9Cjk;XxVU`6dY=Xaz70Y)n~0SH^x)Wt_~HUgrXUD- zBU((TIaapea7dnK)(fj}%D_6o<;^7%QJm+1kmb$g6WB27f$HHA?}qwjginABbbcIj z2BI}Uyljk@72QU?WR$8WQUP`Ri>G$%G-`{_LcI z2?rk{-b08X0Ohub&`sTT2H#h{ahxwKmF1vNC@Ak0ISaU!;^@cu0R4yQqkRtO2M{q= z5I};&`9ORYfH!uvII!rXHNc;My%flSR6h@5pU=XJ0NE;QwHmiN?RJ}6ScHO(@j6gle zKbP0l+XkKS~)wE literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/bolted_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/bolted_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..9a57e2c1b2f5d53b48b463a249d96fd3c4fe9b9e GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C|Kj^ z;uumfCpl3f!QfRxAbXEh!WG8Fd=jMxRxrECq6#tGVf-Jv#I<1x#}w^D4bpoWFZNW= z+qW=8zlbA)VdI@%|N3cKvos%?Jp8w^nn$We=c2ak(u6{1-oD!MPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0&ht~K~z{ry_e07 z5+C>QLfwSPWTLdV zt|y~42W}G>){UE#<^ZzYCMN6vwvnEMWrHL{(E{v1tyW9a0awiG2Lm<%h(xp5WWDqp z$b&0k-MbrGAE^Ur+pvAqJy@Q8xI{I?{d79zt+igSuOeBycb~5&yI()~iX}gIc<3Gh z7{~SF+gEHnk0;$@mNc9k5aXCVPQ5%}_|x(;OPUjf9ng(S=z%T#E;vQN)ws-DB4Oj& zyP)XIWeL)-_5=MFFB7{!GJpQ=HAeu&Ycv|sYPGUfxU{ZF&VbB*;D5pnnEgOe%=Su0 zPCQdU;eMbjV6RX=AY1RY(W7C_fv@l1_((YDaH1?nfYkv+L!8h>JgTn?L$SDDytR8eVPt%k0kW!57NI2@~}DJ0^W<&0nFA#bWn6$MYxIp&SqDRj~;WE zgHXDH9t06cI3UO7U@+jT&TKa0tJHSW0hf1U4)DldZt{74y?2TJ074G*HnneuRsaA1 M07*qoM6N<$f_o}U#sB~S literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closed_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/closed_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..a1168e19653b176016319e88f93c7298b42360dc GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DA?xd z;uumf=j{bUt_A}h)(Z;r7L@4t@p188;;xu5?|d`IxuXXU9`v*l>sN3K&~#ePr)Mv4 z$w??~_T}@8K<%hNe}OFDN!NSfo*zH>&)s!q`MEaxfI_j=rF%0%N)FpuYi%{Exnpts s%1wa{F-CbScD}kHv~cR*J!+ZXSbEl|uh;!2eg$Nnr>mdKI;Vst0CvPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D2Qo=SK~#8N?VM3h z+(r<`&4r2p4N3&nMbHOOdldqShW4R6AhjQ$mDJ|<(RhNK1@a==H3o7{M-o3lg;GIjd^MC(|8n6GN4}H-*JBend-&b4L`XPK^ zU8zq2I6XaWTNz0G&^}NA=01P?WOjCzc9a41L;5g2KCXHy0JTpZ-KkU;pU|EXfPPs% zPyouNu~&biy1}^>0VtDx094zv^aG&Uo~5(^3=R&eURZS9{s>TQ&(aRS%b%XEVkrt6 z8yi!5{cv(}67BBps;wxhPS+lw_3Z=e9vmD*J3BkHj{;Et?Zw-s?d|QTUax!01yrlm%c-fU=SQT5?XtEmETmm1}W>hZ>&|^&s0GFqIGCVRy zYj3nbYHn_Bd-K7h3q2TUzaOAeRINVgT>!uuSqJaxOPZzx-%9~NO+E>ftGjth!_yct zJ$TebDCR0G%KK&{twup}~BTq$v&bM}TU*p_im#crxRsGh14%7MV@iJWW#?=mgiT0a^s}Gk zi>qdA1cW?zoP{)e96XX5zs4m3jn8_Ovsc}k=STT1N{-8+S1`$UuY-*Wr;Jq*nuCR zeW3ur0d~SC$jowfR%U5m{qk&;eJI)&T~pWZD2#Ca-B&6c+uY~0I9`)8Rfk=CvDMV| zX#^Bee8>XA?3nB`(ubmaNz#;k3INyVr4_pGwd|Oj=4IZe-G%!4~dI*$8FFS%+m7qB!?hco@A21 zTAbe&KYsH!J;LUh@Ys)~r6nhA+zO4iL0ij0K6IGOgh?mMOqlefNoWM{`}zRS&XtFY z>uR%u*6WQWHno}lBHTf)x z^20_u762ASzp+<8){TBB2N2gCkZ0)p{5)zlZzirH{YcWrdxIbr0LE1$56Is!=ub>c zsI41(`2jurHyU6JK#`bg@<2{TX%kvEq-nFh_W%HhO9w)drR_BUm~l-O0+TLGC&&me zAtyoH#^faE8)#$E1PTp+z5;`Y$$&f?LqkJd7f@Wa`ELo8HUe%7v=VIpT`hJ0O}hP5 zr)&4?8!uW|g<%^J<&xD^R69yjLwDb$R)<%f{Q1c6JFyYr>c{%}I^Eh_v~kJZfAF6D z2!JTsmp?uwQ5U!%Sp=?rWNBLkfJG5?toL1jI2R!$Lx!thsbaL{4GUZ z&jBR;-+Yjinc;PKQa-@ekLBg%+}cstjk*)(EpXzk@sY^E?m%@5Jz!v^46S^iF zfOcv=AOyI68T3v00AD~aH6OsY9G~#n07>}(Uw+8Z5DUPo=g*cf(V!3U5P>ie(vMgG za28lxn)=upTw{EVC-u|l#*ZXD*_U*r#eu0n!9&zG6^`wsKEO7=AAmoiYg@NDi1@)&uwk%PbpXa|5F7n5q~fY;P%0dV;qMh3v;_w@j{{BA4&u4U=G jC2>j7O=u<5X=vX$A%+ z9Zwg>kcv5PXBql48Oj`;fAX!~hD{spq^b0MV!U%l=10wp9XmfVCa6f5i-|u{>z?m$ zdvWjdf{gxKWfkwI&zR?4wf^55)6D-N3hqn}eJl+!oD7yi3`HsoPdpe-Ok|j#%!o}Q zljTl*?Db_g?c?{nDQ=myr!kXFEkAo*e(tv48ZRYk*8Sd^`Il$LjQPIV3M(adoO%2F zTk_9uRqZDaS4~Ug@qPE~Wt!c-C=>HN4YHs9ek_PI6Q2IHz-;C9-Pis;+3EI8M56Ca zuUo^+GVPQjzMrS=uG5+L`l1pCx}*FA8Q<|7FgmqWGAn)8wwsM&vl-L;_mxzC%GrG| zOzn>3ku6giCdzi$ax>iHPGL&cdG^i6A=_c$ow;+H+W$Lk3tup|vV!&1*L62|eppUB z^^I#mt;neYFWNVFS~}~_l&obZU0BDe!uGE_Xle>emQX`e4E|vgMo3QLvIw1gK2VbD zte+k8uB=ZdTs+FM80VT+K2g+&&USe8y!_geiR}yCJTYFdT5W#!gf~l=ylVItzW{!RWB_9D>x|Kc$D-*aaCOaH$1!s2P~^!%^BN}ex#`Tv`J_Y2%C USe&%pfKnNQr>mdKI;Vst0JfzVod5s; literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/deny_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/deny_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..741589c69616c1de3454e861c84259ee3a055d1a GIT binary patch literal 481 zcmeAS@N?(olHy`uVBq!ia0vp^4nUm1!3HGP9xZtRq&N#aB8wRq_>O=u<5X=vX$A(y z$(}BbAr*7p&NB2qV!+Tkzu>{ME4~^pO4jlD?fR+zr}n%4ojoTH?wss&aP8%@O=|8{ zB^#QrOqlY$_JX&UKIh+AZEW}4o+&t>qZHu}e=92IugcZ>{iFEXpPk{ZDRUX`K79T3 z)w^F2|0`;*e@ptj;M57t1-<6=_rCgnRJl_A>Q~s*gHjVVzPI!H{dn^Am!dC1B_q=h ze4OildEc?w{VBo$x3lcovm4Gh!qI^U&fnkFM0~AsP0kxkdzhUcackR`AD1OJ@VZNX z`>?x^|G#u*u<-UBA8*(F=g;l#vlqS4n#@tZgHw9O?VWyyzHSehYj;o;C{ZsoVcC(2 zg_q?cE&&bDX)z;r;S=K%<`e7| zO$;-ekx@g8>|}lckaTtf#F#Y<*H9E}46>3B=$iG3(RGEUd_ar5j(AAdb*@)mfpNy* M>FVdQ&MBb@09?M(EdT%j literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_open_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_open_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..0b3ace1410858be690b3e6cf6290bc0b5e659bf9 GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^3P9|@!3HF&`%2dVDb50q$YKTtz9S&aI8~cZ8YtM{ z>EaktG3V_?MZN|D0hf!aj*C}aWI6d)RmyYK#n2drWxm|zH)h$NTvl{1&;7LwPzN$t zz%Z{k>dTVEy_4Nn{%V@HVBZbB4Vijp^XyJ?pP$8FkP)+OedpTs44*V*POq)|%Kt(V cSu==zfZJl4XndoYZZwGJ>FVdQ&MBb@0BXxVDgXcg literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/emergency_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..36daac76c4a2f62ed04ed15f7e5ae34283339aec GIT binary patch literal 246 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 c;P>rVH#?|Yr8@Or%o&W#< literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/opening_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/opening_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..787e869bda66aef2a10b59010c23e30f1e7fabe1 GIT binary patch literal 675 zcmeAS@N?(olHy`uVBq!ia0vp^4nUm1!3HGP9xZtRq&N#aB8wRq_>O=u<5X=vX$A(S zP)`@fkcv5P=NS4Qa*$|?7b+Kzh>W<=(-K(UFnhMzKa+Hy8+U#%S_pMa*3;vit@DrR z?M1nrGHa(?x|ezHyXO+!lXt&=eDe6v$Ix>QeJl+!oD7yi3`HsoPdpe-Ok|jFc~-;i z_or9?*)m^V`16N5k$V*cLW?rCGEKYuv8KTA_PqK%_Yz9B?{G`tdwOA6!#>U$yEnEo zx*5}i7hHFb;Cr^fbivV`!ofu|zwY_d*3FV=Im3Ci=!CuZH%;pP@JRdVg;@;~R{zzs z%-}__wR+OKxw~I3oE={lcLpoqHVCAZg?fh3#iF>@V2gpn4-V=|3ZKh~4BW`1Z&t@@N2^6Dyc_K%PL9g)h@OTUSEct7Oi zEy`KH@8yrz0pSMIkzU}_%@^}0a+hliZ^qbuK9d@9| zsxEs6SbY0`eFH9mYW@B%`oa(XoJhFMS+V!m)>=Eq9pd{>AD;7v;bE!6g!9uKnSrT} N!PC{xWt~$(696YcFmeC@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_closed.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_closed.png new file mode 100644 index 0000000000000000000000000000000000000000..4c59d3a28cc502fc1f6032b5fd6f636f07677cc8 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D5&M> z;uumf=j}N~Mj($#q4~eL^O=u<5X=vX$A(y zdQTU}kcv5PXYKW3b`){*zi`gYMWDM@cI%c+Uj)}Miyc%7RcNi9wWqbRZBO%2v3~;F zyft?jE3~8@+&E+Aqu+j$XR5LDO@DLftl=XI21-!~=LM6qJH17F`v4t>bUajw0Y zGvex;hNGYM*`MvU_RnAUsCMHWm-?;C5Bz?;tFQRMTA>9`*8h+9+t04h$4n4C`SWSx z+?oYP(loBlH9c^{&u-4`X>XS7+RP?#`(*j={(n>UJFK$)&B9au>2{Owgh%J>7!S{_ z+0Om?r4fktPXwrJy3*0PrVhRT8UI{=`<>xPAu9UGD6@CY>H^7&?}72d;OXk;vd$@? F2>>PG&Bp)$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_open.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/panel_open.png new file mode 100644 index 0000000000000000000000000000000000000000..c41e1484ee873ddd1c3cf965a4292f754e84dac8 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C^*N{ z#WAE}PI96|g2AhXK=vN1ge#1T`6Nmi&dMlgYyXy?{p0cRe#w`Q7!)Ty=ehdz4A0u$ z`hztRzdt62l$sPD*lj+E$6EV{q?%z-^UrRreMWnJ{}MXkRLbbZCQD?azjyVg< zIZD1CHRPz+(fIRj?e2!8ZiyFSObQO=u<5X=vX$A(y zPEQxdkcv5PZy9 zP1ka9b`_lz$7l0Te76<2;cINK?`&pJ-C@D*Fo#*;9HYQTiPgfg_Gw+sfhP|)@AbbP>N>;DIE8z|Ka1y?CC45=Sg|+0$83#x{@2i$ zMxex9#_5mC-_>1>7rVi@JMF|S=4G3s`_}8-`u+0F&VPB1U-)jAI$v9U;MLN&H9tkR zWVhuoD%HRJZ`Ays9mNeY4266R=uUIE;uM?yb*W$fC7rXs5*c@$dzHUVQ|aubHS%H$ zUaygxHf2Iu<~9DijJMOjer~c}Ff&zdFY~tZuM(X&GpD8fy|Da%-5&i3YwDhHaBtv$ t&#j`E-}zS@(-wwDSS`mQJemIk??LuCtL+N>jsate!PC{xWt~$(697&4yQ2UA literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks.png new file mode 100644 index 0000000000000000000000000000000000000000..186d38f0d1fb6dd6895e7b62647a6d43ea9c26cb GIT binary patch literal 1051 zcmV+$1mydPP)w= z7fa9n13l%x5D!vZMK20oy+|Ux$ObP`l!C5AFF_C#En?!l%}zVr{7{?jn=vyVXm*#( zu=~FAW;&bqX7{D+0>E;d0I(b@1bBDvV0-fVcdyrXECRGYUTJ&B zA9>J3KjVo^1(1g8Fn*yuT~1Dm$uXjjCtkg#mdjKCovluU4=+^TU;KhfYXd8}lem2B z?QFVCrUIyakGmT@{&cEZDTl)7mQUA}#zuf`Z`dMJ0i^LHgfxE8fV7v0*7i${92rew z1Ql%bEXOhkss?iypAg-tm9SI}W8>+(wD>Yg7h)L%`(0;^FnD%FbcNU(gz?lZJk)pG zpLG!AG+vJOs=;aF36?Iv)$a$<&->WN0A2L+zRU&CJqskXPK9+FPiUJ8{|`6;U^z|z zSdK9Qi1+urIOLPd{D7iOc@(p~=CE~*5dfVBFNt^f;86Z6u1>w_D)3E;d0I(b< z04&D|0LyU#V1)UbpW{bb0M+<@Vq`9WuAoSJzEH;MOf|l^@xsSl%(mxI_MSEP@&gE+ zL6Obn4;b^$12-=PKZ92o{}JiQ50JqT<{(LN{Pu)s{ikt$z?cvLa}!mh?w@&nfNC^% zkfineC~~Va0d;}g+~-bLNHNNhp@`gm3`rMQ7F}Tb7ojcKx&U2si=lRbUd9tFDKgyY zG4VZVv`-~x#3!6%fV{C3fcrm!6kN?wO2ak==$H@4`xy}();S;0o+_)GNtYkcA144T z#|Z$-F-8FK{{GJ~elgo?4qMk40R&Uxuef=j804l4*mthmj$f~vXw@6^UQhFTn%mcg zt!t716u@ta2Rw_lsD!od0=dpXhX2+4fL+%$Mu5a6<%6wr)ip){T{r{D+0>E;d05Al%e}LORK+paGzX1%c VC}cMeSumA7s^7a3hT`l(H z6zHD6Q{bt^l}E?FPP-m^KDDah-h;^G?P5yKwRhKkT+Xf_|F?>*nU+&ed_`-07@9CS^%C)a^&MKNR6q+BK zadY>lQ?K8gRaABGX{ZpruztSKCzdPi%A4X@7ytcfeAPVem2g15xBOe7d8u3M>zDmX z@p;8L^P1D-c$FtN_C5~GWH(7tl5U9kbCGfC7G|k0vO65z*5BE3KA=cYu6xcDcR$Z{ w39U!#o&7ymonO=u<5X=vX$A(y zRh}-6Ar*7p&N1vdY#`!te8bte#MN`OuFB=Fwhdhsqqwx0tMSK)AmP7;^D29pIcxr= zC$hR-6F;(%p(B}5;5d^)AFG25cY}o(1EXC1{oilDZ~eM&vOvL=8b#LwFZk9Z)!+O6 z_IZ8xd}U3htj~)ZYi4abx8hk5WA5e1v&V0Jy!9__XTzIi)mz=o72Yb&u>2dHc7Fa- zrdJFR#tY5rRg!i#Y|}_KebKvE^=m!D>dIe6C)#%L%##J%SE$4AD1rftLqHNsxD!%a z+`mredU5npde*)TAr3jSO222vdfCJ=2bO*QD#d(jONqtqpAx69XY*uS-gY9z{qf$Y zE4oH&GWLl2-&Q&t^DE8zN)U^|^nEua{`d>vwh8P64hLKN2HAG;73EC^NZcW-oPkY5e^DfHa2UdWSm_j2%ld(&!={}~vS44$rjF6*2UngH;w&KCdx literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks_open.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec.rsi/sparks_open.png new file mode 100644 index 0000000000000000000000000000000000000000..deabe407f15dec7912525e9bcfae1bda7c50ca2f GIT binary patch literal 439 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..4542845e2e00cd6b80152962a436b3a51fe132dd GIT binary patch literal 6304 zcmeHLcUTkI77sy+s3?LB6=P5VWs;dRNK8Pb88wIzX=0fq6Nsjf1PCC4U0}ubY$#S% zR$Y}9VUb-6BBG0midc}Q;(k4^ z)&hsa_2N$S=Hr z_bPW0G^EtPn9_;Ecv+T#IHY>QvZnOHb(NYNbkqx}7g zqxwXg^Gk2oO-%hh*(=Mh!r~xnbLcx0p6xoD0X_vewY9~9@`9q^K(oN{eOho4QA)mM zZQs^SHX&!U%F5NzZ|tI<;S|}w*%S^lwkf|>mXx=q*EJ4) zu~v|K#^rurDPzIB;dyO8Xtx-e$8p_;b9UvvM@4D zIB{-wZU$l8grWWXQR1Wnlad$Fo)ph&*^}$;MM?_o2dkWSnwso>V%EB(rpmVHk&}ay zjalq$=X&7~^9KCEAe{)^sF-|c0?3wm_Bv8}q|y=y$~$hGnpy_8DxDgSYdtGZtmUv>OL+}^61 z-tLvEbtPt}$Kr5Sb0vUZLA)s}p+ZJNMG65%(#n*8csLx}U8_We^DzxUfQ3oq9OAQI zP7(Zg+`$cS13EwKSA#he_=u+5&wZlI>{I6!0zu`XwR|UeW1nTu{;&R zNL?DZp6%2TDTERctHT)(jl(OpF-Q|!uQz;G8pu3W7_ zu$ekASBTfdHs_k&X&1kUCIIRJR7(1JjS|R);iFH#|cw0Vy%q(TjpQWgMal1qL57 zqPusZ2LGuFC=JU)g`pbE6I=irrcfc64*vWR28%*v!OSr*!s=v+L0h5nS16<$qApm1 zE=IjQ9T*REE)l9hJK$(6n889|e+t5)Fj#bC3=BZK=qp4Lam-(7>-rRd4e$Z$CrZ>B zg(^lrWN2Q~u?WMH;ZZ8lcP#=z-+x%B(2!A~K1`9`Q-Ed=N`8m&f19QqC~AdR6OF2{ z@nN8V9O8K0_CWA!?-&HIi&J2PPH=1^lhda@M2BOb;D4NX^4|zfjYeUgg(eI~+TpkbeK#LaM$_b^UVXRZe$-IWuA)i_)aYu#mpOWQUO44P@UJTJ3{rWSo|>14b@hQoD3 zxt`a2U$mmAMGeL*Z1!#wLmadwjIHomF3IR@ukB9O~{v(k6$ppG5eV_Z&1Kj~h{ zk-RMP#QOYg+qRvtHYbNOwptxORNwIQDcWOAJg-{rdk`F zJ9&Qnlu>Kz#y7u=iysku_v!1@^Vdcks<(J{JNM#>^4@h#F^_XttC~y?hs`mIa%wq( z4h)}eJ841zjR(T;_O5vL%FI&alsC-bRY-ckFa4S;m-W21pZ@N+TiH9>M(j>L>6SDg zsL!S3IazmJogcu>uR4@>HZnX0;yi}OPMvC>x{kaKzbFq% zUcY3CvBfg{vCz~fvcyz9?@B_$^n(E=4n=~ss$sHigl**h;%X*e zntzSkk4oK~_(&6S)1tHq?zu#sIi}~nDWeKoTG;#ill@088!;JgB+<^>;I`r1$&0J2 zFLd7=%k1|uVb+Z+kwXjNH6sTV_j3?s-#Qa9#4f*gWoV5jWpB@fNy)owT`f0aMGVWt z`UCZIdx*G}PkrpXA4kd$DZ+DRYBveZf1SBtg>%WnGS=ga7`X9`N2v|8;-yF$D7KOQ~|s%T&Q;`Z&CG~S-_;; z?PzVe@T3aDm60=VRaEp%4Vn5O%}6SjTT=Y?`8(QJEV|>=9MWu?Xngc=g(g3J$Lwc9 h(?M_3Pd;chGK1Dj9di%1g8qZ!dii=DnlN|q{{Tl;D_Q^m literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closed_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..7c80bc210c483696c4f2080e80390e9c71960329 GIT binary patch literal 5035 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing.png new file mode 100644 index 0000000000000000000000000000000000000000..f4990c3f05e9b5c39fc4a69e991306e40f7416d6 GIT binary patch literal 8106 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/closing_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..51ae8ad362371005930db55fd3917cc175d3bc7d GIT binary patch literal 6610 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/deny_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/deny_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..dfe4d406edae31f1130011576be62680489d511b GIT binary patch literal 6524 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 Bd?x?^ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/emergency_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/emergency_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..31f7a5f9f06cb09551eadf4c25a7a0ac4b86c2fc GIT binary patch literal 5301 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json new file mode 100644 index 00000000000..66600a3b782 --- /dev/null +++ b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json @@ -0,0 +1,149 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from CEV-Eris at commit https://github.com/discordia-space/CEV-Eris/commit/14517938186858388656a6aee14bf47af9e9649f - then modified by 20kdc & AJCM-git, glass by Peptide90, modified by brainfood1183 (github), modified by Lonkuk (github)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "assembly" + }, + { + "name": "bolted_unlit" + }, + { + "name": "closed" + }, + { + "name": "closed_unlit" + }, + { + "name": "open_unlit" + }, + { + "name": "closing", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "closing_unlit", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "deny_unlit", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "open" + }, + { + "name": "opening", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "opening_unlit", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "panel_closing", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "panel_open" + }, + { + "name": "panel_opening", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "welded" + }, + { + "name": "emergency_unlit", + "delays": [ + [ + 0.4, + 0.4 + ] + ] + } + ] +} diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/open.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/open.png new file mode 100644 index 0000000000000000000000000000000000000000..d5fc8df3cab4007373f851d47306597171efa7c6 GIT binary patch literal 15680 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 D_4LR= literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/opening_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/opening_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..51ae8ad362371005930db55fd3917cc175d3bc7d GIT binary patch literal 6610 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_closing.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_closing.png new file mode 100644 index 0000000000000000000000000000000000000000..6afe206992a4a5f8c1b8881316a259f3b09488d2 GIT binary patch literal 6400 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_opening.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/panel_opening.png new file mode 100644 index 0000000000000000000000000000000000000000..e6c87d740e2af2651c01d77129428b36a0fcc384 GIT binary patch literal 6183 zcmeHLc{r5q_aBv#!YdLX(@2O}%`h{Jvc4wSN%SUT<{1XFm>D}Qq$pY1L?mUYgoGAS zyo5?`iIDXbLPEBz@qI@7_51$Qb^X5o_008b=RWu6obx&7zMuP^C~M0<#Y8uXLLd+^ zvYD|hcy|??A}hh`oAds72xL`Tko_LMEyW+o;j-xrZve^<ustBQf72cb87q#1SuXhox7U!aNmT` z*`|H-2lPWsHJsxy;qfrSO6~9#;p}j!2x;4_urd8De&7Q%#<) zcWlbCVQ04a-;nqAxy=%K^)6$6gK>Z8Mt5o|S#27ZS5CNMB9yDhn`rKi8QkQaeDypa zY{N3%Dsu7hIs097;&d;s3ZA4H=;^9^n1t3q?t4?3vrnt71n2j$#x_bsx9dZ<*8D_7 zsnxd1fTD!F7v?>9d7L=6?+NCQsJVd#uI}{Ee2BtdQX=QNdr!lTQmc(B)kY<@n(4fV ziijAE54ZWG4%v|JYmj(;2c*GmTYir#Xc!g+=t73wy$_Cmig&=#9F;ep~!IhBf;`Ys{2m*O@93TW;2=c4>`k7Feb* zTizosDlB|>_wL!Vx#K6SodeH0B;?-qp0v0+B<!G?s%*J)tRo6K;@4$e|I-%#E0tb&oLj&Y7UjF z$lEl}pSLq;EG@|?!qhsNn?5R(vYblS!aXlu6>|rbiz#In?DNec-;Yg#C7gAB{dC8* z+V?NV$10I}^uT|o#h%N=0yV>hN@+1MFIw7pgRjQhE;Q0ABhC5uO5zupjb}n8Z%3xB zK6K6Mg`1`C0@hgFh`qHNjxYtw8@2smUh<6``x=+czuKK(2qAOdZ+UT_KP2O<) z?HspZWo?9LAp7Q%lvn1Jdh3*(1|hn)A3aAL8_fYQWSOrufl&MfV&6dD&mZ z&CHw0qTxQo`^L}TY(*I3Lo2tGzrFatTr{In|8kmFzEX3ehE4Q)%c?c6h{p!aDqU}t zk@vWM$P5;Jkj;>qY>uucS7dlfb|Ur%djJZ|Sjy>>b0SBp^AB{(?R6~v^fK#CvWx>d ze~TZp(Y((0+HiaNsrM1sy!#WG(`$JP+cu^oMY~I_jr@R%nYzA~<1C(iHz`jF3fxFE zeX(<15=(V}U-0(*8|t+G-l^0Ge>Kf}rnBwRs~OiTEAKSDLqQr9$7G9!Q0W$N**#v$ zC93-QlB--0IGuohH!6F|RVx0G=}a2Bea4(rxIfq6lEgS?cb46Bvt`$s_ht#3s7GJ6 z;%`J8?BAST6f;h@+5G92N}=Yw;_fS!N5{L1cZS3`i)~fc_?S|)C1&=}(K3&JbPGk= zaWZjX&Gxl=1E$=#Pl_`q))J%@Rz0|I@bLqV{PfAttc{c|rjkg9Os1tl+Q`rmna%BF zsmC2Gp5cJ0X0gb_YqJVO!`v*yCgVn3P%jP{ zL61FfWo5}1FyVuTcJbHf-RkDAciZcMmWtlg-Zez>?^WN&RJ^xoGInbC?$*n3b$#(3 zYCcZH^g672NVEA79O1>7-2D@VQVWV9p;et>3)_VQ<)@lN5>>Nm%IpE0u2|~&mSY5k z+!KdI@4CZOMHY58p6qB*Lr??tCows80lN2s43l@h9c+-^7p}j0xHUa6ui?P62CJaU zfi~%z17&d)g9rLaD$3K!MWSw!?Gt^&!8YR|Kno#$R~Ko&ar-h2Tqf?4YtU}}TB6EP zqFrK|4veZbR3_Y;d?RbQq3x>)Gd2mB@R9GxnAey*R$t~gl+hy1Z2AkFf7T&~vPEN} zZkx3k*2*hq!tm)0r=0h&BTgb0vpesMmMX{w zXU&_O`ox^a2k@76$?JZQ3B`)#s62SeQ7RJqcx?U#S^JG`PvPB$wg@eT6g1RV-nwTp z8gb@inxtuXO8>2bOBRH7`6D%>YPN+#W5UfF%6zw*)25vbcUGN_(C@Jq*B8B}fTb+d zCMGSag^g5mSYr#qS1Our+|s|qx)SlIXvV^2P7QfqDrA{Y4tF-+?q+U@l5U53pI6~z z{o;lS;S+8d%iekw>D=oIHaV!jATyyPEp0MzXQr*0VSZgBE||$YAD1VTbbVyDsLesb z@x!F~`Hu@V10DMOe-}$fioj}V3i}upJt(@kf?)N)`W`9h3Irl_gkfZ4O*S(6`ke>A z?#ZF?B(sVg3Xk^NWo(0s!`0rzr4gO}Snt!YO*+l+>Uw8i)V+x{N!Tswh?p?1^77b6 z*TYW~}D_ zuP4J7%STu_^F78|>awef_bc>KSBSh{b~33uL`m1Od&P(C%N>JS_g`DCm73nv;yfYJ z-?V_^+7Vsil~7J)^e;3feKKMYJ?6spIi z(TTRkre7eyHxkT)&*u=4NPmBSgufPo&2>kj2?PQXg+XF4a8Luz3uN&r0dN*iSpe}F z!x-RExeN}U!Dc}Pm=rg*FP{X1f$h+*{xLZg7T@4mye}+(d>{iT93&cnLNb}iAA9il zCVn8u7l;0951u`^d_~#CmW1z#CwKpghn&^iTSH2K_r(KlvtTSqkSzM?iDm@PE?&8vBwmsAXY6G-gwM z1xCrnB$&WoB8^RD(1=TqS_BH9O~n)7ZU9OLj-^pCaDq042B%N}EgW7OkEQ|WAE3xA z9-qRZ0s<%y9Kir_@DvJ_j>e+k+B7r;j-}vq-~_rG9gZgu=r}wc58x<2LRfJbU{zAQ zfAmTKMFXL*bc_~-uB{EnX#p5G7OMk7;m|bjqN7d26EIXA9B#=QK^}+()?^Y4gFtU;I4)0f8tC8ji-mQ3QLmHc<;jL~FrOSRx7qLw*Su zDHzpXBi2LyA5Qd^6n>Znz*JD)fdhLH2x2dFS+<1S^%Mc8~G)Ef7A7w zu3uu{my~~3*KfLhiGg2I{#{-FZ*+-%-|zq|a24baZf8ykS!aSuB{+p3Ny)OHa220yVX~@s?P}>wV&Oqg8o>Ro4B6Pg9{dBl&A{{T z9ny!o60V+UtK2tWA!?ZBF1c-ekW5;3M>;>@!rlBT6Y^@e2*fGX$5YIsE4orq#A4ZK z5cJUFmfa4#fsTwhYQM{c=hj2Fg7e!HyB8=O_Ybz=hNf?IZV0u4Ww$=@-q0sSI9T4) zm)5-7A@B5)cMGqSZjnY@Zs-(TO?|p&IObt@eRtZFzrpT1Mb|elhO*~I7HDdd&fPN$A22KRLfyFs@89AUZ-HuOEqL!4OQqnN|{J|!=j2+^l2ZNvSnY8Cwf-IcP8(8xJL#l OkdRF*jdKlM!~O#m;QPJ+ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/welded.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/welded.png new file mode 100644 index 0000000000000000000000000000000000000000..eed2758c7955fd7fce7a0d156810bf5b795ffe37 GIT binary patch literal 5638 zcmeHKc{r478y}G*2`!dX)5u!0kJ&V6tb?&NWjPhEnRl4XW@a$7I4Pne)oF8-wN0fI zQW=r7QYpnz;Y7$5rR_`k-WjdecmCd0ZGw-ZBut zi0LHiJb5*Pk_a=~58xdt?x;=gd-;mtM#=83eLJJFE$v9R2HR?5SKs|!#V4${kEUT%#SNb{{^RK% z2b>p@64n4R&)d0v6?gvhyJ!qnTJ&(+n~Kw0yb|o`A%+LG?`nSSIc)W2`9N%&b{}&? zR$T?|nYz#I80(AGqcJO9=I(VxKiuBddjCxvH|w%z(y_jEN3Z$a zCY|Wh)6YXLDb+qW)1H$PMS84xYOXjbE-k-fZexmC(_#9qEaJ&sx+cEGLmnsOz+6X+ zCUPNZE@fz8)O~I}@($lo0(+C@x4xHtq&X%{=7D!Vxap8r=&Zq^XLjqNYg+ZSoj212 z6BYYvntjbOwp#8{({DNF_lz*qv0gEuNk_x{gz5Zyq0Q@yd*}|hCH5O`2U_I>=+u=t+E^eY<_Wj&XF)>4s#VgK>z2I%;$a z|Gpuz{GN^H@|73(rO##;l}TH`TSdQ}8z}pj+A_88;)f|m8@8EbyVug!~xOlm^GagunNc zR8(&pTPU&4`GAnTi29&aY79nXrL6Qba;4$&roFnARiEFi$bX(~QR#8XcpW|--(YEG zQ+V3SKk{5xWE9Eejo@QS^y9kLVvpjPuOg26Qe0*us<-by9=*ub&|<-H#(tDX`-NT< z-33?JXFW3x5efS2Uw+8KeGaoL^SXBWN3GMnY((Z(vom+C8&_4BooEtYccjdnF~8YP zlDNB?k?!reV?pDTLYKj9hU|&W*Ni+c1)wZ4emk;#OYTnZ+OLyrTB(h@mAi!tyvBNOJ;O4=)C=0LTDqmKf1TGm zJNXe#Cnm{tg`t6-86|Hw(%sR%EZpT&S=<%7mc3JV&37SP9GM*x<%WKp^E|r!usip$ zTga0Qd)2i%6&0(~Z<<&&?Ki%G);*kF@FP~|r{)pRw!aI2xyjW_e%-UX4!ZC7`k*p1BzaHI9k zvB?ZD?avqrG~ey#tC#$m7g-co%(&bfL3|WA-7?WIpg)oK8$Zb=qwK7m$ELm8_S8}r zt$)86Q2%I9I!`w6Y^avzd8%|yRY6wKB=*^Suk>4pl+uv*BbV}@pPd*nnbX61GEr}7 z%;mq%M-Hg}ooKOQ5Gr{6ZF#yqr;J@>t-1d(J~#4P<9qH%eNXU(Cu=}Tss{{fh}9{1jo zG-KczZPckK1hJQ1WMD*@<-0-iuh$#Ls$U3Cj&?fZt&JvK2r=zuYiRXP*p}I`cAlMg zhsKbDdO-Z6kYnoj?1HA2;1R8!HceE~qs%jtRt&;6`Xuvj7Ihx6?tE4C!Fb)$Sz2uq z){D$(3S>+Eq0KL0d^!PgNK3PJRuG7;^HL)oX4Rd0&JNWrq~IL;JL?3 zz@_otEOvY(o5Ddj*lRDAQy~HYCu#uEwQN=_h56fL765Kue(i+=(!llhfiDE+Jg zqz76Kh|yRS1}zYvzwaTHxx_#upB?(g9#R&x^P~MisVG{)23=x6q0H=i3O5GR_bY=k zq;Q@O~n;wcys8IQw3)EF}1 z8)!KwkwOWlkLWnqJ#(&QFrC`+f+xQaT^Hfc6xGHU_0DF88 zDG&pWYXJ2dZ(>IP!f+5;-=7oei=FomlSQ^AkZ}N>h$L}{wnzdIi$MY;4hf0F;JH{l zk&Cru6IEe+WtWP$vRFU@E(wPsg`$BHNEHp-N~N*&kLcJ4P$?h=hecv>NDPIAwWZ>5 zR1EY?pkgox^yh%l%2oX(;>GCy(PXg-@Ld^z`i@K|Kjy|F8;+4 zAnIR({FJ`G<4=9BG1;s+g87#B^aui2)L6*s4_aG?@Hf6f#ey)&wLO1hZNDD8e-TNj-%fm){Qz(%xo`jU8Nr(txgabu84vgrd^y zr#{`>T3h<)boH*Dqvb8|$I=h?)?c4CJX)8QqGee>z4D;lrM`VIEGrO>g<3 z6Kne%fv6?HhPrM8=<=5Kk1d)1`QYWIo@BZ8OvRaA#@bJOMrK+4^S9D|*Nvl{Y>(xs zC-!%guL_SVJxY9|Yh-MKFxd9;a3Cw-LBIhWj=!~^m5x&f8FiymeXurc?de6b1$4yR z@VEEVEmxftIB$~s{L!>fbm~FF0pTf^eFu!Xy#se-8+DJ|J?vm$K{K#yXxgk$45S7W zE=$fo*R!nGb$E7m=rLct?pOM-^uC=H4pk2yy0x^SFeQg$9>XKM$dR^j!!LJFkO$a| z-9ERz-tmZT$a5jE+TUQ>JmBQ1rLB)yPfS@p!+Z;~V}CCpuD%%fps@E1NkLFQUyNlO zxzFk?LqDCXUVKrJHK#vTG0=o_pdpo_j*3P#N-Fbsf%yh^poxVsT)dr&=%I=K1=()B As{jB1 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/assembly.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/assembly.png new file mode 100644 index 0000000000000000000000000000000000000000..49fabce14222d01578878f7a1ad4c64c1b855cb2 GIT binary patch literal 634 zcmV-=0)_pFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0uM<?lnp zCV(q1m&;nSrPu34UfgF=8Q3RC9tfNa&Y4IFs8lMMb}Z`kI+ZB_$EM%!M_%0Lfp~HO z0DLwkYu_&^VX!9aMPN4}0Q3`M8Y zAs?*?f`ImdO^eo;TGQ!NxbAkNxw*ZgGRfcXHq5M1i z%_6cp1^K=&#^dpBUd!lCMV!suiRh9XEFf!E;GN3ANtR+8&UPNq!I_8&fGR#0o{N|O z9Jg77Y__0(xsP=|lj;H%ku*~{0H&qR2mGuY1M&rg%@hRSAUYqgPXbD%lCkN)qGM}- zRzmVD;0vjIA9RcN^v;%@0NyHFtrnFs!{LxhUeB`x*wh0^fbI2s-z&My_IfVFKSPea UDfdhfOaK4?07*qoM6N<$f*#fry8r+H literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_open_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_open_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..f69f2a124e9c18f2314de5228a71f987fee00a0b GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D462u z;uumf=j{bUz6J#Wmp~sIrn#M4x28Y1G40B=D{3Wo9Nm~?5_A8lP1b$>cHO(@j6gle zKbP0l+XkKS~)wE literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/bolted_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..9a57e2c1b2f5d53b48b463a249d96fd3c4fe9b9e GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C|Kj^ z;uumfCpl3f!QfRxAbXEh!WG8Fd=jMxRxrECq6#tGVf-Jv#I<1x#}w^D4bpoWFZNW= z+qW=8zlbA)VdI@%|N3cKvos%?Jp8w^nn$We=c2ak(u6{1-oD!MPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0!2wgK~zXfwU#?> z!axv)odg616oDWj3KVgX6o5#PhJurDK+eJiphyZT3KS3&0b^mI{OcLk%lZj&J|Sy% zc9?(PyLbJMPs79B+hjyxmQ1!3qW&d=g}`?6W142UTqajMyWMWP-3|tW*=*M7baJ^I zS6t${?sB=@+sAu$c>hcTN1s8WP`KJK9-7ZDhr>Rf&$GiY(7;0k#bOZwFxu_*>2#`8 zDk!3*EPjUkFploY?*W1A_*TQ9fKW!Gk!DDQfa5r}?ax(wt|*XN&5mxZ*J~I;pw((M z8V%1cs71il=|IkYzYjwQ(7<{A8ySzsnjxoJpM#r0YMEUn1A%4$uJ8~7SUKt>X96Y} zI}wHuC=?3V$(}zg>IOz44LH${dc6)KvpI-DoJA!wF9&WinOK%Zw#Ixu#}NbrF<6DG z)r$IED2jcn;v9bQ#jsavPa!?nL@*otUazMfVH!yN^*zTgsF6xQ z&9044BFO?+#EIFd?bHu;ow;Ha#kZY?hzkn-jYeg(S36Cm2L|SOu~=w(HF&8}kM$ev zpAZ7teGo(FLV{BR&ba#^6Oc2@`yhzyiarNW#$<9K3v>Z=g)}5w5e5btgc=edfGp}H zlZFacTtbPkWP=9P(zz|(Mefnj_RjGVa?*1M^7QP%H_9Lz4=4X!gm+^i6bZ1i(m=ty zlW}lUIUeh^jgFh8M=r;LYX&>{LVyn2Znx_NFw^N2Upi-0fy7{6z^l6M`JOh|F#Z6b WeEPyy8TqCF0000sN3K&~#ePr)Mv4 z$w??~_T}@8K<%hNe}OFDN!NSfo*zH>&)s!q`MEaxfI_j=rF%0%N)FpuYi%{Exnpts s%1wa{F-CbScD}kHv~cR*J!+ZXSbEl|uh;!2eg$Nnr>mdKI;Vst0CvPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D2H{CWK~#8N?VLeR zBR3Ss2bL`x=pqnQRHBD+pddi>&v=UnbB8p?yGGRW)T2|GaO#xf3oDjQ2}0hpSaQnk3~y5k<8%Epoj02U~)xw$#@N*Ep<9+HcT z3w4wwqz|lnb#;}Tot@EZ6oA{?+hlilmtLrYySuyEe4qeqZf?>6I6Xa0+U<6*y@2KA z<=)E5N^)~^qh1*-k3;()bz80f_Z>2~K+MKVC+ccENCR+qcvws0C9xY1XiE$`Fj$LU zUtb3cz}nhcZ)ayGxxBoDQ}h}JB5a94AB6D1q|01<_?W!~nn=_Dyu7@qT3m{B$2~xm zjb$7FRW^?P(}v1M27nt68W{l02Y60E0hpbgrGr>tQ$lV`KtF~LtSj{?05AVeB+Fk9 za%G{xs_*#tn2dpbXdj^4{_{h|z^k|gzFS*WwKzbJH7Nj`o({?6N z=rouQt(iHR^P>dNfgTK`-w)97m8;it@=}X6${O$LOOd7o=cNE3C!Yt>)uXJ^uo}a9 zA4^@7a`5B(ut;BG>r0WQ1p3q;Wo}+K-(X?F#+YGi5*@9Ih%*Gd!=G!l3h73>uke=3UZ*PzOAOK&%a=S&S*HMSeqNd{FagOk z#-uOJ6_b|90L=ucW}s?9ROaSf*Zp~v`BGJr0`T)sKhnX;$qAJ_SN0hIUVd(EZBYq+ z`Smv{SzqGni>)Su^W)rw>G7%o(0f%;dK%cI$IE=N)s&>^ahpG8*lC6xb9F#J4;aM{ ziHkM`z&1ZG!6=RAb^nn<0gzn~B@Z%rU@netZh-r{ziA0uWx!)U@M{wnZ9EE}I-iFh zgSJ+NTy&Vsgh{8&OqlefNvH?N^|;L}%(PDD9)QU5GgeMGB>cYK10=3~pa-~UWW z@blT#)#9uz^6vaAZ$y++R{f|BrKa$!P!l}!i+U zn5x=%jy_+FQPBM;YrKuN^HZS8m52DKjn}cg@@3kY{QyMRvgP>)(;GXRkbl08rlzNA|nSt-jh0b&tyPOg-!bbHt@Mj=$dQ*+PV7yvB3Sypsw!+ zgamrg_5O=u<5X=vX$A%+ z9Zwg>kcv5PXBql48Oj`;fAX!~hD{spq^b0MV!U%l=10wp9XmfVCa6f5i-|u{>z?m$ zdvWjdf{gxKWfkwI&zR?4wf^55)6D-N3hqn}eJl+!oD7yi3`HsoPdpe-Ok|j#%!o}Q zljTl*?Db_g?c?{nDQ=myr!kXFEkAo*e(tv48ZRYk*8Sd^`Il$LjQPIV3M(adoO%2F zTk_9uRqZDaS4~Ug@qPE~Wt!c-C=>HN4YHs9ek_PI6Q2IHz-;C9-Pis;+3EI8M56Ca zuUo^+GVPQjzMrS=uG5+L`l1pCx}*FA8Q<|7FgmqWGAn)8wwsM&vl-L;_mxzC%GrG| zOzn>3ku6giCdzi$ax>iHPGL&cdG^i6A=_c$ow;+H+W$Lk3tup|vV!&1*L62|eppUB z^^I#mt;neYFWNVFS~}~_l&obZU0BDe!uGE_Xle>emQX`e4E|vgMo3QLvIw1gK2VbD zte+k8uB=ZdTs+FM80VT+K2g+&&USe8y!_geiR}yCJTYFdT5W#!gf~l=ylVItzW{!RWB_9D>x|Kc$D-*aaCOaH$1!s2P~^!%^BN}ex#`Tv`J_Y2%C USe&%pfKnNQr>mdKI;Vst0JfzVod5s; literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/deny_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/deny_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..741589c69616c1de3454e861c84259ee3a055d1a GIT binary patch literal 481 zcmeAS@N?(olHy`uVBq!ia0vp^4nUm1!3HGP9xZtRq&N#aB8wRq_>O=u<5X=vX$A(y z$(}BbAr*7p&NB2qV!+Tkzu>{ME4~^pO4jlD?fR+zr}n%4ojoTH?wss&aP8%@O=|8{ zB^#QrOqlY$_JX&UKIh+AZEW}4o+&t>qZHu}e=92IugcZ>{iFEXpPk{ZDRUX`K79T3 z)w^F2|0`;*e@ptj;M57t1-<6=_rCgnRJl_A>Q~s*gHjVVzPI!H{dn^Am!dC1B_q=h ze4OildEc?w{VBo$x3lcovm4Gh!qI^U&fnkFM0~AsP0kxkdzhUcackR`AD1OJ@VZNX z`>?x^|G#u*u<-UBA8*(F=g;l#vlqS4n#@tZgHw9O?VWyyzHSehYj;o;C{ZsoVcC(2 zg_q?cE&&bDX)z;r;S=K%<`e7| zO$;-ekx@g8>|}lckaTtf#F#Y<*H9E}46>3B=$iG3(RGEUd_ar5j(AAdb*@)mfpNy* M>FVdQ&MBb@09?M(EdT%j literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_open_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_open_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..0b3ace1410858be690b3e6cf6290bc0b5e659bf9 GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^3P9|@!3HF&`%2dVDb50q$YKTtz9S&aI8~cZ8YtM{ z>EaktG3V_?MZN|D0hf!aj*C}aWI6d)RmyYK#n2drWxm|zH)h$NTvl{1&;7LwPzN$t zz%Z{k>dTVEy_4Nn{%V@HVBZbB4Vijp^XyJ?pP$8FkP)+OedpTs44*V*POq)|%Kt(V cSu==zfZJl4XndoYZZwGJ>FVdQ&MBb@0BXxVDgXcg literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/emergency_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..36daac76c4a2f62ed04ed15f7e5ae34283339aec GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^3P9|@!3HF&`%2dVDb50q$YKTtz9S&aI8~cZ8YsBJ z)5S5QV$R!38@ZYd1R5R+muz7@d1u|qEX>4Tx04R}tkv&MmKpe$iKeQrM2Rn#3gi@XCq9Tr^ibb$c+6t{Ym|Xe=O&XFE z7e~Rh;NZt%)xpJCR|i)?5c~jfc5qU3krMxx6k5c1aNLh~_a1le0B^I(6vH0_6xGzz ziMWu zOq3{l-R0eV-M#&LrrqBUqik}z=fQf?00006VoOIv0RI600RN!9r;`8x010qNS#tmY z4#NNd4#NS*Z>VGd000McNliru=mrE1Eibo(8w3CV0UJp~K~z}7?U%7j!$26tf4v^T zSbC(>33cg|qk|4E{r{&d4myNDhb|5tH1r6zQHYI$rWNXXiIBYMxaIx$9(?z1ba($y zmxq$@I^?&WpB_heQXI#1a~1&8=@oKZBgZu#?{C=G7kuh?JYtLiKmzRdd%BVUaL(bJ z>kc4_qHZV9r3AoiHtYEW27q1yNGXR1E&+@&7-LXMc{MGHg3V@g2FUZA)oRt<1eVL? z=^{;2*6X#mE}*rp=kqz+?e;Q)HqFB@Jof>BBuTK=wrYL?$g<3P)=DWBiv>XtptYv) z?bjZts%m%(27m$JZ-B{U(s~(b3W)@$K1b-ATdcL-&GS5Gx7+=*2+Bk0-$;n>-7mz? c4|xp07c#(K2iF0S`~Uy|07*qoM6N<$g1Uxixc~qF literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/open_unlit.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/open_unlit.png new file mode 100644 index 0000000000000000000000000000000000000000..810a46ad20878719ec0a811c40a4a5f764899cf8 GIT binary patch literal 173 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 N!PC{xWt~$(696YcFmeC@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_closed.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_closed.png new file mode 100644 index 0000000000000000000000000000000000000000..4c59d3a28cc502fc1f6032b5fd6f636f07677cc8 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D5&M> z;uumf=j}N~Mj($#q4~eL^O=u<5X=vX$A(y zdQTU}kcv5PXYKW3b`){*zi`gYMWDM@cI%c+Uj)}Miyc%7RcNi9wWqbRZBO%2v3~;F zyft?jE3~8@+&E+Aqu+j$XR5LDO@DLftl=XI21-!~=LM6qJH17F`v4t>bUajw0Y zGvex;hNGYM*`MvU_RnAUsCMHWm-?;C5Bz?;tFQRMTA>9`*8h+9+t04h$4n4C`SWSx z+?oYP(loBlH9c^{&u-4`X>XS7+RP?#`(*j={(n>UJFK$)&B9au>2{Owgh%J>7!S{_ z+0Om?r4fktPXwrJy3*0PrVhRT8UI{=`<>xPAu9UGD6@CY>H^7&?}72d;OXk;vd$@? F2>>PG&Bp)$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_open.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/panel_open.png new file mode 100644 index 0000000000000000000000000000000000000000..c41e1484ee873ddd1c3cf965a4292f754e84dac8 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C^*N{ z#WAE}PI96|g2AhXK=vN1ge#1T`6Nmi&dMlgYyXy?{p0cRe#w`Q7!)Ty=ehdz4A0u$ z`hztRzdt62l$sPD*lj+E$6EV{q?%z-^UrRreMWnJ{}MXkRLbbZCQD?azjyVg< zIZD1CHRPz+(fIRj?e2!8ZiyFSObQO=u<5X=vX$A(y zPEQxdkcv5PZy9 zP1ka9b`_lz$7l0Te76<2;cINK?`&pJ-C@D*Fo#*;9HYQTiPgfg_Gw+sfhP|)@AbbP>N>;DIE8z|Ka1y?CC45=Sg|+0$83#x{@2i$ zMxex9#_5mC-_>1>7rVi@JMF|S=4G3s`_}8-`u+0F&VPB1U-)jAI$v9U;MLN&H9tkR zWVhuoD%HRJZ`Ays9mNeY4266R=uUIE;uM?yb*W$fC7rXs5*c@$dzHUVQ|aubHS%H$ zUaygxHf2Iu<~9DijJMOjer~c}Ff&zdFY~tZuM(X&GpD8fy|Da%-5&i3YwDhHaBtv$ t&#j`E-}zS@(-wwDSS`mQJemIk??LuCtL+N>jsate!PC{xWt~$(697&4yQ2UA literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks.png new file mode 100644 index 0000000000000000000000000000000000000000..186d38f0d1fb6dd6895e7b62647a6d43ea9c26cb GIT binary patch literal 1051 zcmV+$1mydPP)w= z7fa9n13l%x5D!vZMK20oy+|Ux$ObP`l!C5AFF_C#En?!l%}zVr{7{?jn=vyVXm*#( zu=~FAW;&bqX7{D+0>E;d0I(b@1bBDvV0-fVcdyrXECRGYUTJ&B zA9>J3KjVo^1(1g8Fn*yuT~1Dm$uXjjCtkg#mdjKCovluU4=+^TU;KhfYXd8}lem2B z?QFVCrUIyakGmT@{&cEZDTl)7mQUA}#zuf`Z`dMJ0i^LHgfxE8fV7v0*7i${92rew z1Ql%bEXOhkss?iypAg-tm9SI}W8>+(wD>Yg7h)L%`(0;^FnD%FbcNU(gz?lZJk)pG zpLG!AG+vJOs=;aF36?Iv)$a$<&->WN0A2L+zRU&CJqskXPK9+FPiUJ8{|`6;U^z|z zSdK9Qi1+urIOLPd{D7iOc@(p~=CE~*5dfVBFNt^f;86Z6u1>w_D)3E;d0I(b< z04&D|0LyU#V1)UbpW{bb0M+<@Vq`9WuAoSJzEH;MOf|l^@xsSl%(mxI_MSEP@&gE+ zL6Obn4;b^$12-=PKZ92o{}JiQ50JqT<{(LN{Pu)s{ikt$z?cvLa}!mh?w@&nfNC^% zkfineC~~Va0d;}g+~-bLNHNNhp@`gm3`rMQ7F}Tb7ojcKx&U2si=lRbUd9tFDKgyY zG4VZVv`-~x#3!6%fV{C3fcrm!6kN?wO2ak==$H@4`xy}();S;0o+_)GNtYkcA144T z#|Z$-F-8FK{{GJ~elgo?4qMk40R&Uxuef=j804l4*mthmj$f~vXw@6^UQhFTn%mcg zt!t716u@ta2Rw_lsD!od0=dpXhX2+4fL+%$Mu5a6<%6wr)ip){T{r{D+0>E;d05Al%e}LORK+paGzX1%c VC}cMeSumA7s^7a3hT`l(H z6zHD6Q{bt^l}E?FPP-m^KDDah-h;^G?P5yKwRhKkT+Xf_|F?>*nU+&ed_`-07@9CS^%C)a^&MKNR6q+BK zadY>lQ?K8gRaABGX{ZpruztSKCzdPi%A4X@7ytcfeAPVem2g15xBOe7d8u3M>zDmX z@p;8L^P1D-c$FtN_C5~GWH(7tl5U9kbCGfC7G|k0vO65z*5BE3KA=cYu6xcDcR$Z{ w39U!#o&7ymonO=u<5X=vX$A(y zRh}-6Ar*7p&N1vdY#`!te8bte#MN`OuFB=Fwhdhsqqwx0tMSK)AmP7;^D29pIcxr= zC$hR-6F;(%p(B}5;5d^)AFG25cY}o(1EXC1{oilDZ~eM&vOvL=8b#LwFZk9Z)!+O6 z_IZ8xd}U3htj~)ZYi4abx8hk5WA5e1v&V0Jy!9__XTzIi)mz=o72Yb&u>2dHc7Fa- zrdJFR#tY5rRg!i#Y|}_KebKvE^=m!D>dIe6C)#%L%##J%SE$4AD1rftLqHNsxD!%a z+`mredU5npde*)TAr3jSO222vdfCJ=2bO*QD#d(jONqtqpAx69XY*uS-gY9z{qf$Y zE4oH&GWLl2-&Q&t^DE8zN)U^|^nEua{`d>vwh8P64hLKN2HAG;73EC^NZcW-oPkY5e^DfHa2UdWSm_j2%ld(&!={}~vS44$rjF6*2UngH;w&KCdx literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks_open.png b/Resources/Textures/ADT/Structures/Doors/Airlocks/Standard/space_sec.rsi/sparks_open.png new file mode 100644 index 0000000000000000000000000000000000000000..deabe407f15dec7912525e9bcfae1bda7c50ca2f GIT binary patch literal 439 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_diagonal.rsi/state1.png b/Resources/Textures/ADT/Structures/Walls/space_sec_diagonal.rsi/state1.png new file mode 100644 index 0000000000000000000000000000000000000000..091cc5b06eca9e4dfee82fcaabeb27e1c36939da GIT binary patch literal 645 zcmV;00($+4P)*zF1Xg-J}?^e_-(UYw*8>*I`G9}(Yk#S2LyjS9>sdSesSV*xwvPnkM4klqrm-s4;*+tpB|2L zZ^7!oNeqw8#c-4uO##7|%cbMa=ktJXWhZjYM{z)Km(#K=%IX8)dcArlNQY`da25wU zVBxmvfp524=ZI9{9>6O{2h~6dj`ZjA*~5wYcsx2KEPS)s6x2j-2kPMa{XT$0wmD}G z{C2y!l=O0747gP3Tm!&~fZaP~B&z{2rXFBbZo zIm5~LuT0$Mv>NLS3eHCE9#)rH2VyuIY{4-XJdT`H0avTl!LgC7fi}2ut|Qh)4jf=x z&^iSX9EflLHt%@LmWAMj!HIi;I>oPS2t$6-Ol}c#elrcm0fQ&TkQhL zmgaSLp8_I_M^nyq!dbYWy2tiXbMHWEQEirzz3qfc*-Jf3IzZ%#VoEp;y*QxuQBm2B zknFjKOe*5|S>S+$PaU}&@eU|bB2U3{UMw=&NklwG+s-cf)|Q48(q^I@FW&TGeUGD%RW zRKjMnY2M%84OA=^E%$x0*{s>^c9DucB-sVaESJkj?`y2rYZC;43B%BQetw!%E|;@* zoleK{&1Pfr`MjA4f__X%9uG+tJN%55J9`$4iO??)})23z#(O5yWN_%w>K+``!I$e zl;XHR6~uf#H!0Q}=i~9%;>vloS~c~0J?M9VA~vz$Co;F!N9)VnpXjk9$%C$$TMxQA1(n={zedB`m!6H18l*+BKhJBO6gCQ zOeRexld&=QB7HVEVX`as`@Mz3_f-ubRr+;sJnNY8!Ve&FmR2E#Us~Y%! z6qB0YNWW6k6cePd}z7Q*$mK7RJ2`^vAC;?Ys*&LXQyljJkQ;f@?wo6 qejd8OV53*nt<3G;Vkr~I$@D*Cx3&m7FmOEp0000>50t2NsjmP8EAzHm}f&hYlKA**KI4pr| zHXARX-EQY?i)}DL0E7nk`FvhH9*<%)8WqRmvBZLMHBG0}vR}2n&2#SraL;4q2_E_9 z=V!sT5U}lb8)~j?`%~Ma!wy(&g2%M4*Gql&-Zg*-vFD-oSb3SWNid}W0NzCHB|)iW zGa3LOGvS`H%|b;(?7@soGh8M z0Thfm)t=9}bMpiMFdQVUWQG8rdy6fgnamIXkZ^*k3D!RMzL#^DB0vh(RXHh^hLG#^ z`k#1S3XavA&1Pj49h}4AP*AOLtfj{Da=td@U#|gb1o-wYy}dT8rSXm$0T9-AhKDXY zG(d*NR3qSgK8NNt)22oM5YpJ0LF*7CTP(onj4Kb{-M0lCa`aY}OaOtySpne5WKypD zPXG_rlL_EC&)m0^i0|PGxV$~zJ6+VP+JGtmUUF3H`+QE;0D5>n5E3+Qci;#30w3QP zn)T`$K!OO~+7?LG0QmMuJ`az8(T+0m+wE3<0g~FGxyqrjlL_Eik38hzQSAvnBvhAe z$plDY2~yTo%e>noan<&&pOXndNE?$ZsJ)a|-3ZFbES8fsfGXV-9Q*$_TR;MDVg#{e z7$;aDAz1_H^W%8CTrQH2vdm);F$2oT5in5`-d^aqBAI~IYE>&T44-s_2%b(-?Es1$ z)QupmK0bTX5mLkxJ#;bw02um7iAX}oR>=Ncl#>aF5z>OnSLIE%0W^HP5Wxhn?lg}4 z#|OdtVuq?Pz_ghsnE*~oB52`bU1W~ab*^dyeu4(55uo`^ zKc|+c5da~5u5OdCIVZ@_SZV~oCeScS0q7dbx<1Ql1oR0iX71$w2gFR~>bqPnzj$)M zXfn2-3k^SmCyeX;{eGW>;n!<`DFR$xqR*DNw4qI%83KF(lD02lhJeuON%uO`uT7hI z0(`zi8?df-vc&?f!E@Ac3oy2zhZ#B-};&&fLC;PT3n;`(g^VXOo@EWZRu%_?y zZUdn5hy`HfVc4o9xV%G>)f8l?U+)A^IFP_EMzHce&k+4{-Y1wK0Dy7CF)GXrk|euw j69hmodVF2%dr8DMMqP4xEo`GU00000NkvXXu0mjf27~FT literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state1.png b/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state1.png new file mode 100644 index 0000000000000000000000000000000000000000..85f86d8e8a0d90b8cccea62b2054405286b34b29 GIT binary patch literal 653 zcmV;80&@L{P)z-qP1O5}dOXW8W#sRO90s)-Yn@OV6O zVs311w_CPtpP@Q{!{N{uU$U+&%cM=8!CznH6zbF!P|xD3oLvE``0LIumrE1EV(}JZ zYJ%fjI^Vr2k-%hd34|qXxm?cRZ#c)JRCwwDaJ2D=iQ?aQ#B%QA9ij*8CuK@D106xr6MnSVJ89?|R zFZJLO!g@ZRnt8Wid9%g>1FY0aU*AmmR7L)%LCcD*of~*tiHM zxE!CU2{XqBhYfiWEQ+Fy1K;bl1(6ec?+4Y?4;zs#vWv+8!jTNmvm;P8WCfs{%SYXl z0mQC-CsCNJsMnN+MSAZsc3w^r+ER2F?45A8%-S%>Bb)~`+1<)0o zwVR`_1L%UHS*H4J9ukND7l2CzeqrM@?j6P*q}S`U*)|tb4t0OQKyhO|Z zh`l3-NuLXf830@f4fW#yh7uc_y(?gBBRVu6SHMtWW3xA}0O^|}^8ln3X9j@QI|4HR nV5GZld!@J2nF1g!_b&hcuE~Zzy~mrd00000NkvXXu0mjfM@uY3 literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state2.png b/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state2.png new file mode 100644 index 0000000000000000000000000000000000000000..97bbe2af5e848ac98de1d9beacba75a33fc66277 GIT binary patch literal 1071 zcmV+~1kn45P)2mk*c@uHv?K|Bb0*o%S)yYDM}OI}}_w4F>l?-_8DG?QlL z%VaW>bU%`o(`YpMa#`s0dTupXKA+DYK_U-9$J5qm(|9~?bUY4b0ssnszu%Mje4g?) zoleQ)U-{*7`FVCY9Dd4m3MK#m;}Cu_nIxZ|pGmjdP4@eJDi6we>G^!-J+Az$bpW{L zG4m82!mU=Tq|*trx7+P13+;CJMWT70BhbAo{|Fu-;Z>4b29)? zfHG=N+8B9wk;NFL-DP5dzAO90RZl__wX19M2iLJt8?a2FIoaI z7?1T1F#r@C&I$w`3LPpeXRk0@g%bT>}UZg}1f@#2NtK9;wK~qrhlK8TsjSO3(Bjk4F=e>>Wc400J8( zpN9vv$0Z1bXP>rnF#w3_nA|d-Wpi$uWoWZ~HR@sjsvcHYPIzsps0JG0;1A;G5Bv3bkbcON3105knc`CnJ3;+c5{alU+g3ngC^i7n-090X; zaY2!hLos(H0CV&KvW&jPkyw!pplh53rLDTE2DBwqm2t)22UHm>k9Ibj zePOpibcn!;u?3e8{0#0edHsKXEiRJb?KQv@0C`?wkuAy7hC0v808kVlY5Njp0PxKo z-D@9B-8S<8&=}SgFx1aH09XRpC149^4`Rj`;%G30aEx|>fE z6N-S`Y&JzrrJkEx0`+lUWo0|au0`SzBAV6^Kq(4GH z0$i5Dpy9>{X9!sk^1MU5lJ+9-`e1YG0FXm~0EdVFI_vxRir*TruOt^mQj&q$m;XKP p-Z8SROfHQE&1e8GN}Ike`vy7ah~*&vnt%WR002ovPDHLkV1fo9+=KuC literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state3.png b/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state3.png new file mode 100644 index 0000000000000000000000000000000000000000..29b445200442fd2e91cb2d33b1a45033ff470034 GIT binary patch literal 632 zcmV-;0*C#HP)F(x!kbHt2KFoU-kdpe!A5c9DNb^y{eos7@2Y%2Q-ZQD-GRaH&pPYUb+bX_;v zeYso?bzKMh@O(al`}#Vv18~3JefBN3VHxnVsA1{L&gU}}$)D^1z%oegsY5~ZF+c%uFe933Wk57j?Qj%zmNqhr zqClPJhrK-728VA!)%pqq!L;K}%77hDZjfuyGXQ-Sm^;h_LI2+go6%XLYpyREfY<9a z$z5}dUFtgtB`%-=xL&U)6S*0nF#t7v!{8)AlL%`9YP>Q41>Z3E@pz0P*5>JU69nyL zaLuPJ$op{zLG%l3=k)9{mRa8#j|SlVet*kW5;%yWK{^VYM(Z1KK2j z7yT+g3c%dTFjq&y?LeWV0Jv-jT`gSWx2$IYU`q$EvPc1tvf1&0L<)dUv6MCiK*~&T z*`W;JLSBkqWq_2K;If010j_PYebtrAanMT&04TAa(l$q52fzkHLYej3yaB-cU%=!P zAV&aqhv5dPxj=2wXRd4$_I^S13=jo?D`--_Dq;X|aPm=JUCxp6u9e0AM9lzTqB#>-DM%fqMW{wSNp=0MJI*`}oBIyswb9e8mE^ z5%xa58w)rb4kT98_LyYsNOS`L$gjQWp)hg<041O{O%zLmaI4koP6-L|{pE5A%jL4U zJsb|38shuubQ&POKcCNGzu${xpyp4d_1*%q1EB5HQdb`NQ~}_enpNzNO2@S-0P#d# z+XVoxE0asEVgb33_Bv0o0Iw^PODM1hCErJhK!64YWUB3q(umDh2>DKUh-3+}H^|PIzE1xNvn9p5|0 z76(VvE>S8=m;T~MU_2hb=8fAgBGW+LKmQu!PH-}MyCe7B2NVF@*<@yciUni_+}(8I ze1KFV?tDS&xaI!>sYo$=#Ro9J^oCq4pf^j+C@Kzym~oTIaZWM0Q^Y6@rpy7rU@Fco ze-c(lSafQd10c;QZZ?}viesnVJ3(^`z!RjnBDw2g0l5)x&j)9Rp~U&ZHV<|E&QVf* zD4O{r00*bBeDY}xbBfrvYi$kyz6L>oxZPEuPy3kzV4WWS228_!02Uc(q5uE@07*qo IM6N<$f*{u@+W-In literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state5.png b/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state5.png new file mode 100644 index 0000000000000000000000000000000000000000..dc17c3f52fa4f09c389f5a48d4eb5618e5394a2e GIT binary patch literal 834 zcmV-I1HJr-P)2zx7H=9j!yAmIKSFPFyJGI@BoCD2`@`L5bPcxcb7#n#a96!Td+W@w}*fx;_4>=F7maEJ9$7Y zmT=8u&{~>Fvz{L^`JwCiA!GB|DFlWR{OzBgJm9xmaOnKs-UHGXL*2#C*Hd7q5eI!f z6@bLw@Ar1nRD#_tEd)yOl)fm2subpgkODyBS^6TJMg=IN?ENpe;UQ3p$Kn!QgY|(E z>H&S?8MrKla_(wj9w6}~JXxN)pBj1Kcs%OV)`tN=5#kZ5#<3tEK6>9z<9^qNh5!Sr z?5&sw0*^n=l@Pz1VD!CE0Nv+2q5&ey*N_K70YqDGjQ<}BK$g}-u{e)Gd4|G5_Z@vG z00il|FLx&i0)}&TgxoC@0NdLLRwC3B0MTrV|JO-SJ3c_b+Cb1FQN4Z};Piq}4-f>t z6m=og5dVM=1;7BWAaETZyxcAHo1nx20WaXCT7dF`-s9@SJwU?b2}+Fmb(rqE`ZNFt zEFl0w3nrI%#!U%Lm5M{3w>>hw%Y6Pkibb)k%jeTwhpdBLWgboPy5K!41 z%Tgs~&j2srl@ShAcz_C|z~ETIGs3|R0L!a5%DzE11UmrzMnIb;C4`KeUHq)$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state6.png b/Resources/Textures/ADT/Structures/Walls/space_sec_wall.rsi/state6.png new file mode 100644 index 0000000000000000000000000000000000000000..738ee79e5d92dc51a5b62606c4fb6fc5b251cab9 GIT binary patch literal 730 zcmV<00ww*4P)se+AXOo#2XOo7(IFia0G&W?G!g(zxjzLsK>^UEvZl{t z3gba$PyncmDkB%2i^KkY8G*07)awENs}!$VmG}+Y*G(>H0AS@u7S}Xa4T66sJY;v0 z8Vvv(Yk>mq{LN-l+`C-31Vc0c@=TA5(K?>(cB>=TMvML}fc5}+nya=ct5{I-04$(t z;IjobH969KC1Q2)>5qN{)WZwvy-gX(+xXWY?C>~hZ08Mt^Ds)dCPz8!j9s|7| zfHmH9zQA?dDE=?t3Wg6~iUB^TeN&(00pB#6KDMBfAs?Y?A9YPprMuo^lPPilWHP0$ zE|*EGU4b(3kpnQB%}lyE(U;4m6Q7AG`XET|0rCW?X@)}6lLv%G*fu_#9fqQ=7uxzj zyDd<d+&D_-JDshZrA!-CyJPd7S61 zTtm;&|Aks>=gNZfT=aQj}63+#f17pn#E_00000NkvXXu0mjfvh}Rd literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/meta.json b/Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/meta.json new file mode 100644 index 00000000000..7e9b625db06 --- /dev/null +++ b/Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/meta.json @@ -0,0 +1,17 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Made by the Adventure Time Project team", + "states": [ + { + "name": "state0" + }, + { + "name": "state1" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/state0.png b/Resources/Textures/ADT/Structures/Windows/space_sec_diagonal.rsi/state0.png new file mode 100644 index 0000000000000000000000000000000000000000..e46284d2253b332133786bbedbe21f97bad4e0cc GIT binary patch literal 490 zcmVImay%sb?d4ewA^?>Gj_6&04ljzLUjcP^k|g~J zFu{AXpb7rI_}qL4*1@OK?}Zsqx$+KBYCdFodrm68_!z{uz_>)b)NGXW-AL^;Mka#jLCC?nMDB- z+|_e*haD0xA_?Bcb5@Rgadmy!*Z~_jH)BP}wgLEj{bVYwn13CR;66M@+fg|pP18RCHt_1L<7P6J*8wR?BY=!o7b#y~1q{d4IH_zl1p-4Xcvwee)7)!r* z_fE>H?|ZdWJZ)e4^^)-KuTQmz08|b*Vs-&Kyz9Do1(@)9dL-rGK8^kh)5PdI6Svi z4$uD$zg5oP$sN$)wt=&GPB?RP2MEVebHNGW;31n4C4g{lW*#-yz;XJy4mntW4oCIo zB_nyR!-EA#a39a31^B?Z`IzVYhS|%45I8pGC1dlPU}jN(1P}Eb-C>8si%5dUc+Se1 zogMIja}!pC92!;uA#eagJU0d236S8ao{tKU;5j^Z3h;q*af;{MgL$wZ1dfF%o)gTx fmf*QPCz$yUqN)!j>RWcx00000NkvXXu0mjfn0Lcg literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/full.png b/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..652827bee57b6a79217ce5a5cb70583da9b28853 GIT binary patch literal 716 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 Ef(8i+ZvX%Q literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow5.png b/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow5.png new file mode 100644 index 0000000000000000000000000000000000000000..2df78054761f02ebbeae44cd392f28afdcda65eb GIT binary patch literal 1212 zcmV;t1Vj6YP)UA6E+DV<`Rfk??Lbwe}X3!^bdGYVgyefMFcbAgT5@e2zJ z#rF30(4~HU|2AZUK`X!|3J30z} zXkbM{7E7Sp?GB{Bx3^bJ&+MB>LLD={f7QROEC`sMnIFgt;ICZ0y!P<^qy8O$GfzD* z*x5-=0B&`<+hgNHKLih)O;o~!lR$U);^LVH;YB#p)T8`|;(I^{FgDXMe|Wu7{jBZ+ zOq4SZZAr{;#gy5S6A*$VI3&!O*5pIK`l_^(6QCd!9Kpo=99LB*Cjf~PB(xDIKH$ni* z7TS`S-->C<<|ZHnNpMJ*m7vLoe)Xkjy9rQ`3XWi6evV6}-2@{Z`+-PU_9Q_yfUVxXxkP|`=mEXDa-HTR+D(9! zwFUn9vlq+O*wnU02w>Sm-?@8l3E($3J{D6`Qv-OzXMqFGmO5?%2$uP3AC_2oyXK=>t#L!ov@aOQqceAaRla9TTmB*w{AwwGhCWhaM#; zdw#;hkWq0>`fA++tV-Y>fDKRAd=48Rh;>&$SoS0V7e_^edjRY?iJJfm3`tOO%H9F6 z;@h;jmw=UQ*`A>90N|YfT@u!H+OWARAl&!}9?7EuxCao-p}P&T+yPL*6L7c(8fX40sDvEu1nwmOP@MU2IlzZwZXAK1oIl+M4AA_*pIY1%K=1%!RRa8Y z)$Px}!+osS6LeX;d;2CS2mj9nnxNmR1pPZPzm9FXUCSO2Cdp-C?Fkqg^M}`KvhOA! z1W9m6nlr5cLcjV_wA}N67yRzZP{uefHMzmNz8A>v}JP> zKyXNyGp)(T{5m#8+xl0Zq$`uc~% z@xw_RobZEp30}T>y?kTk+E8_X0D_11O7bND0A)X%#Ir+!B~a~S85CQabXC&HH$lzX zIyBL>uHZG!)6R;3vO^P+(4TP+S|c_K0`RT?-y47qg)*0000xy4Hk-bL`H<{x-6KR~<)0nw{R@gj&94_*z#KM~AP5RcwMh{q%b zC7+@TYu>^eYI|#@ccyx_JBbZRRabRS*Lz*v+cP`c$|9HBckXxhcD`q0V`JIL$w^Nl zr17cQY;p1K!RpG#_il*C`@7lr^h^f%G}+fGhS_AWm+H<#fLrPXTn zr2CKHA+04D0wyLV2C#Iy-2od6G6U2G6^zLcpv8;~09aWF9=3Cp0TQItneMPj@Uo3X zPdWn#j3k7ZabA=1Oc21Ccb5Y}SY&bpwA<}IJOmFTGoi16v62)4I18YV1bhm(X)j3# zkr7D|;7;a+ItRGmQNK{91Xz&;# z83GUt?gq8OkHQeUzI*+o2ylZ#o#3G}6QGAG`u%2wtIyBheC;-8(2$RwEI(dbTc5f% zeYw|cV`C$4etq^v_T}>@a}4fPZu39E=57^$`&aZxWc$n+474y9~zTdZii2XdkoB?>b;Vc(30TMiK zbBDRv!9I|}QV2!>9&`{8CCEwb=qo1-x|x85g$4JT1NEXKu-q62I*rH>zqRAVn_yY?t#rSs=^R;7OWF_`y_p_mDH`{vzO zH*g+~D9ik=Z`Ach_5kffD1rI>vTf6PBLr~fA+_T3YkiusnF(+~5*z~NOv~V1zx2h> z%>+o05*)$!{A?FXnh8MQ1PQ4XpI_@UDq9c&IP;KN@%gnrqq3O^AUFifnU=x({IYEf z-TXYj8no~I0&Q85RLFDldjUx#Gf4xFc0RwnmQOb?0p9?1{Bnl1{yx9fr^pta0DzH& z;9%oSm-(fyjvk!=2~vV57@wc*>dNQ@AaH_&)QZoq^%>Td1Oc3RcR3J*&(C&sWOM=u z4#9J#B@mxqwymR^p9j<#RQ7rC^3^R_ht7v8lx6;BPnTVHrFwJ%Rz9rWs}ynI#?c8l zKG?~BD5+uNuSYar2wU_$pbSLQ;4yae48RvBTU%R&JQTfI8tMy|=mY>Dem6Yq*J)s? z?6(DlOcpqz6M&h-Ur0~|SXFa$0`SVbrEG3)TDoWd0JO~hTFyn@kpKVy07*qoM6N<$ Ef(8i+ZvX%Q literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow7.png b/Resources/Textures/ADT/Structures/Windows/space_sec_window.rsi/swindow7.png new file mode 100644 index 0000000000000000000000000000000000000000..1ffb576e0ddfb32d7c99c367ada5babb76827036 GIT binary patch literal 922 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEU{3UOaSW+oJUh!UPbQGZ`MO^4 zlH%7^>}L#%E~_*=R4QHYh_U6s*0lX)``mczT{sn17BVo`?c}}w`*(kQY3+MdTK4EJpF;gNsis-SW1hYAPqb!GmziuSlcqgyr)-56 zETlG9y+sbGBfDiAW`z{bSXuFG*#=n$j^il{R(F+K@2>LaY&gxnYgNVe&8x5TF%&D# z@Lv6+>-x>ka_fdaH?uji`YtP^U6 z;!QiZbe-Q*B>cXNAuH%?;<86GXCEqq$HtpiwyLn$SQlr_0Es>AxODY3LkY8Cwc`*dUJoK80aN4b)F>84SQ~T3<1DZpHThb_=wte!b_u74Klqu>Jh>Esy_C z@n$>F?+aG_z3MSz%4A>)so~TDn!gs9LINgd@fib?gjOFSGA`azg++$U+g|pDodRc; zhSnT?{RWr>5dpQo>oKFn!x?8D8bp6QBYO~N3&ayUuS@eId4hCHe%tdsT{A~?>4pqo Po@4NI^>bP0l+XkKu{6o8 literal 0 HcmV?d00001 From 0cdc61c2fbbd198a958791016a9dcde7681f2b96 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 7 Aug 2024 22:46:33 +0300 Subject: [PATCH 16/28] fix humanoid.yml bug? --- .../ADT/Entities/Mobs/player/humanoid.yml | 511 +++++++++++++----- 1 file changed, 361 insertions(+), 150 deletions(-) diff --git a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml index db7ce6eafe3..47b51bc8693 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml @@ -1,210 +1,421 @@ - type: entity - parent: MobHuman - id: ADTSpaceSecCadet - name: Space Sec Cadet Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance + id: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleader + - type: RandomMetadata + nameSegments: + - NamesFirstMilitaryLeader + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTLeader + +- type: entity + id: ADTRandomHumanoidSpawnerERTLeaderEVA + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleadereva + - type: RandomHumanoidSpawner + settings: ADTERTLeaderEVA + +- type: randomHumanoidSettings + id: ADTERTLeader + parent: EventHumanoidMindShielded + randomizeName: false + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGear ] + - type: RandomMetadata + nameSegments: + - NamesFirstMilitaryLeader + - NamesLastMilitary + +- type: randomHumanoidSettings + id: ADTERTLeaderEVA + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTLeaderEVARiot + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, Riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleadereva + - type: RandomHumanoidSpawner + settings: ERTLeaderEVARiot + +- type: randomHumanoidSettings + id: ERTLeaderEVARiot + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGearEVARiot ] + +## ERT Janitor + +- type: entity + id: ADTRandomHumanoidSpawnerERTJanitor + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT janitor + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertjanitor + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTJanitor + +- type: randomHumanoidSettings + id: ADTERTJanitor + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: Loadout + prototypes: [ ADTERTJanitorGear ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTJanitorEVA + parent: ADTRandomHumanoidSpawnerERTJanitor + name: ERT janitor + suffix: ERTRole, Enviro EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertjanitoreva + - type: RandomHumanoidSpawner + settings: ADTERTJanitorEVA + +- type: randomHumanoidSettings + id: ADTERTJanitorEVA + parent: ADTERTJanitor + components: + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecCadet ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTJanitorGearEVA ] - type: entity - name: Space Sec Cadet Random - id: ADTRandomHumanoidSpawnerSpaceSecCadet - suffix: Space Sec + id: ADTRandomHumanoidSpawnerERTJanitorEVARiot + parent: ADTRandomHumanoidSpawnerERTJanitor + name: ERT janitor + suffix: ERTRole, Enviro EVA, Riot components: - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full + sprite: Markers/jobs.rsi + state: ertjanitoreva - type: RandomHumanoidSpawner - settings: ADTSpaceSecCadet - - type: InitialInfectedExempt + settings: ADTERTJanitorEVA - type: randomHumanoidSettings - id: ADTSpaceSecCadet + id: ADTERTJanitorEVARiot + parent: ADTERTJanitor components: - - type: MindShield - - type: GhostTakeoverAvailable + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecCadet ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTJanitorGearEVARiot ] + +## ERT Engineer - type: entity - parent: MobHuman - id: ADTSpaceSecOfficer - name: Space Sec Officer Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance + id: ADTRandomHumanoidSpawnerERTEngineer + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT engineer + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertengineer + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTEngineer + +- type: randomHumanoidSettings + id: ADTERTEngineer + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary - type: Loadout - prototypes: [ SpaceSecOfficer ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTEngineerGear ] - type: entity - name: Space Sec Officer Random - id: ADTRandomHumanoidSpawnerSpaceSecOfficer - suffix: Space Sec + id: ADTRandomHumanoidSpawnerERTEngineerEVA + parent: ADTRandomHumanoidSpawnerERTEngineer + name: ERT engineer + suffix: ERTRole, EVA components: - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full + sprite: Markers/jobs.rsi + state: ertengineereva - type: RandomHumanoidSpawner - settings: ADTSpaceSecOfficer - - type: InitialInfectedExempt + settings: ADTERTEngineerEVA - type: randomHumanoidSettings - id: ADTSpaceSecOfficer + id: ADTERTEngineerEVA + parent: ADTERTEngineer components: - - type: MindShield - - type: GhostTakeoverAvailable + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecOfficer ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTEngineerGearEVA ] - type: entity - parent: MobHuman - id: ADTSpaceSecPilot - name: Space Sec Pilot Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance + id: ADTRandomHumanoidSpawnerERTEngineerEVARiot + parent: ADTRandomHumanoidSpawnerERTEngineer + name: ERT engineer + suffix: ERTRole, EVA, Riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertengineereva + - type: RandomHumanoidSpawner + settings: ERTEngineerEVARiot + +- type: randomHumanoidSettings + id: ERTEngineerEVARiot + parent: ADTERTEngineer + components: + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecPilot ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTEngineerGearEVARiot ] + +## ERT Security - type: entity - name: Space Sec Pilot Random - id: ADTRandomHumanoidSpawnerSpaceSecPilot - suffix: Space Sec + id: ADTRandomHumanoidSpawnerERTSecurity + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT security + suffix: ERTRole, Basic components: - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full + sprite: Markers/jobs.rsi + state: ertsecurity + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary - type: RandomHumanoidSpawner - settings: ADTSpaceSecPilot - - type: InitialInfectedExempt + settings: ADTERTSecurity - type: randomHumanoidSettings - id: ADTSpaceSecPilot + id: ADTERTSecurity + speciesBlacklist: + - Diona + parent: ADTERTLeader components: - - type: MindShield - - type: GhostTakeoverAvailable + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary - type: Loadout - prototypes: [ SpaceSecPilot ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTSecurityGear ] - type: entity - parent: MobHuman - id: ADTSpaceSecCommander - name: Space Sec Commander Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance + id: ADTRandomHumanoidSpawnerERTSecurityEVA + parent: ADTRandomHumanoidSpawnerERTSecurity + name: ERT security + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertsecurityeva + - type: RandomHumanoidSpawner + settings: ADTERTSecurityEVA + +- type: randomHumanoidSettings + id: ADTERTSecurityEVA + parent: ADTERTSecurity + components: + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecCommander ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTSecurityGearEVA ] - type: entity - name: Space Sec Commander Random - id: ADTRandomHumanoidSpawnerSpaceSecCommander - suffix: Space Sec + id: ADTRandomHumanoidSpawnerERTSecurityEVARiot + parent: ADTRandomHumanoidSpawnerERTSecurityEVA + suffix: ERTRole, EVA, riot + components: + - type: RandomHumanoidSpawner + settings: ADTERTSecurityEVARiot + +- type: randomHumanoidSettings + id: ADTERTSecurityEVARiot + parent: ADTERTSecurityEVA + components: + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTSecurityGearEVARiot ] + +## ERT Medic + +- type: entity + id: ADTRandomHumanoidSpawnerERTMedical + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT medic + suffix: ERTRole, Basic components: - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full + sprite: Markers/jobs.rsi + state: ertmedical + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary - type: RandomHumanoidSpawner - settings: ADTSpaceSecCommander - - type: InitialInfectedExempt + settings: ADTERTMedical - type: randomHumanoidSettings - id: ADTSpaceSecCommander + id: ADTERTMedical + parent: ADTERTLeader components: - - type: MindShield - - type: GhostTakeoverAvailable + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary - type: Loadout - prototypes: [ SpaceSecCommander ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTMedicalGear ] - type: entity - parent: MobHuman - id: ADTSpaceSecService - name: Space Sec Service Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance + id: ADTRandomHumanoidSpawnerERTMedicalEVA + parent: ADTRandomHumanoidSpawnerERTMedical + name: ERT medic + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertmedicaleva + - type: RandomHumanoidSpawner + settings: ADTERTMedicalEVA + +- type: randomHumanoidSettings + id: ADTERTMedicalEVA + parent: ADTERTMedical + components: + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecService ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль + prototypes: [ ADTERTMedicalGearEVA ] - type: entity - name: Space Sec Service Random - id: ADTRandomHumanoidSpawnerSpaceSecService - suffix: Space Sec + id: ADTRandomHumanoidSpawnerERTMedicalEVARiot + parent: ADTRandomHumanoidSpawnerERTMedical + name: ERT medic + suffix: ERTRole, EVA, riot components: - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full + sprite: Markers/jobs.rsi + state: ertmedicaleva - type: RandomHumanoidSpawner - settings: ADTSpaceSecService - - type: InitialInfectedExempt + settings: ADTERTMedicalEVARiot - type: randomHumanoidSettings - id: ADTSpaceSecService + id: ADTERTMedicalEVARiot + parent: ADTERTMedical components: - - type: MindShield - - type: GhostTakeoverAvailable + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short - type: Loadout - prototypes: [ SpaceSecService ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль \ No newline at end of file + prototypes: [ ADTERTMedicalGearEVARiot ] From d9c4b70361214c4d553926ddafe026df7c7ef203 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 7 Aug 2024 22:50:40 +0300 Subject: [PATCH 17/28] update humanoid.yml --- .../ADT/Entities/Mobs/player/humanoid.yml | 212 ++++++++++++++++++ 1 file changed, 212 insertions(+) diff --git a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml index 47b51bc8693..87fb4760ed5 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml @@ -419,3 +419,215 @@ settings: short - type: Loadout prototypes: [ ADTERTMedicalGearEVARiot ] + +# SPACE SEC + +- type: entity + parent: MobHuman + id: ADTSpaceSecCadet + name: Space Sec Cadet Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Cadet Random + id: ADTRandomHumanoidSpawnerSpaceSecCadet + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCadet + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCadet + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecOfficer + name: Space Sec Officer Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Officer Random + id: ADTRandomHumanoidSpawnerSpaceSecOfficer + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecOfficer + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecOfficer + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecPilot + name: Space Sec Pilot Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Pilot Random + id: ADTRandomHumanoidSpawnerSpaceSecPilot + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecPilot + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecPilot + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecCommander + name: Space Sec Commander Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Commander Random + id: ADTRandomHumanoidSpawnerSpaceSecCommander + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCommander + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCommander + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecService + name: Space Sec Service Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecService ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Service Random + id: ADTRandomHumanoidSpawnerSpaceSecService + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecService + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecService + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecService ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль From 5fb2722e942d66faddf9788884d32e293a46c12a Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 03:01:44 +0300 Subject: [PATCH 18/28] fix humanoid.yml part 1 --- .../ADT/Entities/Mobs/Player/humanoid.yml | 421 ------------ .../ADT/Entities/Mobs/player/humanoid.yml | 633 ------------------ 2 files changed, 1054 deletions(-) delete mode 100644 Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml delete mode 100644 Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml deleted file mode 100644 index 47b51bc8693..00000000000 --- a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml +++ /dev/null @@ -1,421 +0,0 @@ - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleader - - type: RandomMetadata - nameSegments: - - NamesFirstMilitaryLeader - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTLeader - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeaderEVA - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleadereva - - type: RandomHumanoidSpawner - settings: ADTERTLeaderEVA - -- type: randomHumanoidSettings - id: ADTERTLeader - parent: EventHumanoidMindShielded - randomizeName: false - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGear ] - - type: RandomMetadata - nameSegments: - - NamesFirstMilitaryLeader - - NamesLastMilitary - -- type: randomHumanoidSettings - id: ADTERTLeaderEVA - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeaderEVARiot - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleadereva - - type: RandomHumanoidSpawner - settings: ERTLeaderEVARiot - -- type: randomHumanoidSettings - id: ERTLeaderEVARiot - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGearEVARiot ] - -## ERT Janitor - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitor - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT janitor - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitor - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTJanitor - -- type: randomHumanoidSettings - id: ADTERTJanitor - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTJanitorGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitorEVA - parent: ADTRandomHumanoidSpawnerERTJanitor - name: ERT janitor - suffix: ERTRole, Enviro EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitoreva - - type: RandomHumanoidSpawner - settings: ADTERTJanitorEVA - -- type: randomHumanoidSettings - id: ADTERTJanitorEVA - parent: ADTERTJanitor - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTJanitorGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitorEVARiot - parent: ADTRandomHumanoidSpawnerERTJanitor - name: ERT janitor - suffix: ERTRole, Enviro EVA, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitoreva - - type: RandomHumanoidSpawner - settings: ADTERTJanitorEVA - -- type: randomHumanoidSettings - id: ADTERTJanitorEVARiot - parent: ADTERTJanitor - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTJanitorGearEVARiot ] - -## ERT Engineer - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineer - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT engineer - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineer - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTEngineer - -- type: randomHumanoidSettings - id: ADTERTEngineer - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTEngineerGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineerEVA - parent: ADTRandomHumanoidSpawnerERTEngineer - name: ERT engineer - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineereva - - type: RandomHumanoidSpawner - settings: ADTERTEngineerEVA - -- type: randomHumanoidSettings - id: ADTERTEngineerEVA - parent: ADTERTEngineer - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTEngineerGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineerEVARiot - parent: ADTRandomHumanoidSpawnerERTEngineer - name: ERT engineer - suffix: ERTRole, EVA, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineereva - - type: RandomHumanoidSpawner - settings: ERTEngineerEVARiot - -- type: randomHumanoidSettings - id: ERTEngineerEVARiot - parent: ADTERTEngineer - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTEngineerGearEVARiot ] - -## ERT Security - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurity - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT security - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertsecurity - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTSecurity - -- type: randomHumanoidSettings - id: ADTERTSecurity - speciesBlacklist: - - Diona - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTSecurityGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurityEVA - parent: ADTRandomHumanoidSpawnerERTSecurity - name: ERT security - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertsecurityeva - - type: RandomHumanoidSpawner - settings: ADTERTSecurityEVA - -- type: randomHumanoidSettings - id: ADTERTSecurityEVA - parent: ADTERTSecurity - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTSecurityGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurityEVARiot - parent: ADTRandomHumanoidSpawnerERTSecurityEVA - suffix: ERTRole, EVA, riot - components: - - type: RandomHumanoidSpawner - settings: ADTERTSecurityEVARiot - -- type: randomHumanoidSettings - id: ADTERTSecurityEVARiot - parent: ADTERTSecurityEVA - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTSecurityGearEVARiot ] - -## ERT Medic - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedical - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT medic - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedical - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTMedical - -- type: randomHumanoidSettings - id: ADTERTMedical - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTMedicalGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedicalEVA - parent: ADTRandomHumanoidSpawnerERTMedical - name: ERT medic - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedicaleva - - type: RandomHumanoidSpawner - settings: ADTERTMedicalEVA - -- type: randomHumanoidSettings - id: ADTERTMedicalEVA - parent: ADTERTMedical - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTMedicalGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedicalEVARiot - parent: ADTRandomHumanoidSpawnerERTMedical - name: ERT medic - suffix: ERTRole, EVA, riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedicaleva - - type: RandomHumanoidSpawner - settings: ADTERTMedicalEVARiot - -- type: randomHumanoidSettings - id: ADTERTMedicalEVARiot - parent: ADTERTMedical - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTMedicalGearEVARiot ] diff --git a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml deleted file mode 100644 index 87fb4760ed5..00000000000 --- a/Resources/Prototypes/ADT/Entities/Mobs/player/humanoid.yml +++ /dev/null @@ -1,633 +0,0 @@ - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleader - - type: RandomMetadata - nameSegments: - - NamesFirstMilitaryLeader - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTLeader - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeaderEVA - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleadereva - - type: RandomHumanoidSpawner - settings: ADTERTLeaderEVA - -- type: randomHumanoidSettings - id: ADTERTLeader - parent: EventHumanoidMindShielded - randomizeName: false - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGear ] - - type: RandomMetadata - nameSegments: - - NamesFirstMilitaryLeader - - NamesLastMilitary - -- type: randomHumanoidSettings - id: ADTERTLeaderEVA - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTLeaderEVARiot - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT leader - suffix: ERTRole, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertleadereva - - type: RandomHumanoidSpawner - settings: ERTLeaderEVARiot - -- type: randomHumanoidSettings - id: ERTLeaderEVARiot - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-leader-name - description: ghost-role-information-ert-leader-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTLeaderGearEVARiot ] - -## ERT Janitor - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitor - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT janitor - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitor - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTJanitor - -- type: randomHumanoidSettings - id: ADTERTJanitor - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTJanitorGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitorEVA - parent: ADTRandomHumanoidSpawnerERTJanitor - name: ERT janitor - suffix: ERTRole, Enviro EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitoreva - - type: RandomHumanoidSpawner - settings: ADTERTJanitorEVA - -- type: randomHumanoidSettings - id: ADTERTJanitorEVA - parent: ADTERTJanitor - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTJanitorGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTJanitorEVARiot - parent: ADTRandomHumanoidSpawnerERTJanitor - name: ERT janitor - suffix: ERTRole, Enviro EVA, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertjanitoreva - - type: RandomHumanoidSpawner - settings: ADTERTJanitorEVA - -- type: randomHumanoidSettings - id: ADTERTJanitorEVARiot - parent: ADTERTJanitor - components: - - type: GhostRole - name: ghost-role-information-ert-janitor-name - description: ghost-role-information-ert-janitor-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTJanitorGearEVARiot ] - -## ERT Engineer - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineer - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT engineer - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineer - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTEngineer - -- type: randomHumanoidSettings - id: ADTERTEngineer - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTEngineerGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineerEVA - parent: ADTRandomHumanoidSpawnerERTEngineer - name: ERT engineer - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineereva - - type: RandomHumanoidSpawner - settings: ADTERTEngineerEVA - -- type: randomHumanoidSettings - id: ADTERTEngineerEVA - parent: ADTERTEngineer - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTEngineerGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTEngineerEVARiot - parent: ADTRandomHumanoidSpawnerERTEngineer - name: ERT engineer - suffix: ERTRole, EVA, Riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertengineereva - - type: RandomHumanoidSpawner - settings: ERTEngineerEVARiot - -- type: randomHumanoidSettings - id: ERTEngineerEVARiot - parent: ADTERTEngineer - components: - - type: GhostRole - name: ghost-role-information-ert-engineer-name - description: ghost-role-information-ert-engineer-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTEngineerGearEVARiot ] - -## ERT Security - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurity - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT security - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertsecurity - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTSecurity - -- type: randomHumanoidSettings - id: ADTERTSecurity - speciesBlacklist: - - Diona - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTSecurityGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurityEVA - parent: ADTRandomHumanoidSpawnerERTSecurity - name: ERT security - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertsecurityeva - - type: RandomHumanoidSpawner - settings: ADTERTSecurityEVA - -- type: randomHumanoidSettings - id: ADTERTSecurityEVA - parent: ADTERTSecurity - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTSecurityGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTSecurityEVARiot - parent: ADTRandomHumanoidSpawnerERTSecurityEVA - suffix: ERTRole, EVA, riot - components: - - type: RandomHumanoidSpawner - settings: ADTERTSecurityEVARiot - -- type: randomHumanoidSettings - id: ADTERTSecurityEVARiot - parent: ADTERTSecurityEVA - components: - - type: GhostRole - name: ghost-role-information-ert-security-name - description: ghost-role-information-ert-security-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTSecurityGearEVARiot ] - -## ERT Medic - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedical - parent: ADTRandomHumanoidSpawnerERTLeader - name: ERT medic - suffix: ERTRole, Basic - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedical - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: RandomHumanoidSpawner - settings: ADTERTMedical - -- type: randomHumanoidSettings - id: ADTERTMedical - parent: ADTERTLeader - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: RandomMetadata - nameSegments: - - NamesFirstMilitary - - NamesLastMilitary - - type: Loadout - prototypes: [ ADTERTMedicalGear ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedicalEVA - parent: ADTRandomHumanoidSpawnerERTMedical - name: ERT medic - suffix: ERTRole, EVA - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedicaleva - - type: RandomHumanoidSpawner - settings: ADTERTMedicalEVA - -- type: randomHumanoidSettings - id: ADTERTMedicalEVA - parent: ADTERTMedical - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTMedicalGearEVA ] - -- type: entity - id: ADTRandomHumanoidSpawnerERTMedicalEVARiot - parent: ADTRandomHumanoidSpawnerERTMedical - name: ERT medic - suffix: ERTRole, EVA, riot - components: - - type: Sprite - sprite: Markers/jobs.rsi - state: ertmedicaleva - - type: RandomHumanoidSpawner - settings: ADTERTMedicalEVARiot - -- type: randomHumanoidSettings - id: ADTERTMedicalEVARiot - parent: ADTERTMedical - components: - - type: GhostRole - name: ghost-role-information-ert-medical-name - description: ghost-role-information-ert-medical-description - rules: ghost-role-information-nonantagonist-rules - raffle: - settings: short - - type: Loadout - prototypes: [ ADTERTMedicalGearEVARiot ] - -# SPACE SEC - -- type: entity - parent: MobHuman - id: ADTSpaceSecCadet - name: Space Sec Cadet Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance - - type: Loadout - prototypes: [ SpaceSecCadet ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - name: Space Sec Cadet Random - id: ADTRandomHumanoidSpawnerSpaceSecCadet - suffix: Space Sec - components: - - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full - - type: RandomHumanoidSpawner - settings: ADTSpaceSecCadet - - type: InitialInfectedExempt - -- type: randomHumanoidSettings - id: ADTSpaceSecCadet - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: Loadout - prototypes: [ SpaceSecCadet ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - parent: MobHuman - id: ADTSpaceSecOfficer - name: Space Sec Officer Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance - - type: Loadout - prototypes: [ SpaceSecOfficer ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - name: Space Sec Officer Random - id: ADTRandomHumanoidSpawnerSpaceSecOfficer - suffix: Space Sec - components: - - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full - - type: RandomHumanoidSpawner - settings: ADTSpaceSecOfficer - - type: InitialInfectedExempt - -- type: randomHumanoidSettings - id: ADTSpaceSecOfficer - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: Loadout - prototypes: [ SpaceSecOfficer ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - parent: MobHuman - id: ADTSpaceSecPilot - name: Space Sec Pilot Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance - - type: Loadout - prototypes: [ SpaceSecPilot ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - name: Space Sec Pilot Random - id: ADTRandomHumanoidSpawnerSpaceSecPilot - suffix: Space Sec - components: - - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full - - type: RandomHumanoidSpawner - settings: ADTSpaceSecPilot - - type: InitialInfectedExempt - -- type: randomHumanoidSettings - id: ADTSpaceSecPilot - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: Loadout - prototypes: [ SpaceSecPilot ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - parent: MobHuman - id: ADTSpaceSecCommander - name: Space Sec Commander Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance - - type: Loadout - prototypes: [ SpaceSecCommander ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - name: Space Sec Commander Random - id: ADTRandomHumanoidSpawnerSpaceSecCommander - suffix: Space Sec - components: - - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full - - type: RandomHumanoidSpawner - settings: ADTSpaceSecCommander - - type: InitialInfectedExempt - -- type: randomHumanoidSettings - id: ADTSpaceSecCommander - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: Loadout - prototypes: [ SpaceSecCommander ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - parent: MobHuman - id: ADTSpaceSecService - name: Space Sec Service Human - suffix: Space Sec - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: RandomHumanoidAppearance - - type: Loadout - prototypes: [ SpaceSecService ] - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль - -- type: entity - name: Space Sec Service Random - id: ADTRandomHumanoidSpawnerSpaceSecService - suffix: Space Sec - components: - - type: Sprite - sprite: Mobs/Species/Reptilian/parts.rsi - state: full - - type: RandomHumanoidSpawner - settings: ADTSpaceSecService - - type: InitialInfectedExempt - -- type: randomHumanoidSettings - id: ADTSpaceSecService - components: - - type: MindShield - - type: GhostTakeoverAvailable - - type: Loadout - prototypes: [ SpaceSecService ] - - type: InitialInfectedExempt - - type: RandomHumanoidAppearance - - type: NpcFactionMember - factions: - - SpaceSecFaction - - Passive # Костыль From 0d9f3c7a8971a387fe389c4a48bf982ddbce7491 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 03:05:34 +0300 Subject: [PATCH 19/28] fix humanuid.yml part 2 --- .../ADT/Entities/Mobs/Player/humanoid.yml | 634 ++++++++++++++++++ 1 file changed, 634 insertions(+) create mode 100644 Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml new file mode 100644 index 00000000000..75cf98458d5 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml @@ -0,0 +1,634 @@ + + +- type: entity + id: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleader + - type: RandomMetadata + nameSegments: + - NamesFirstMilitaryLeader + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTLeader + +- type: entity + id: ADTRandomHumanoidSpawnerERTLeaderEVA + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleadereva + - type: RandomHumanoidSpawner + settings: ADTERTLeaderEVA + +- type: randomHumanoidSettings + id: ADTERTLeader + parent: EventHumanoidMindShielded + randomizeName: false + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGear ] + - type: RandomMetadata + nameSegments: + - NamesFirstMilitaryLeader + - NamesLastMilitary + +- type: randomHumanoidSettings + id: ADTERTLeaderEVA + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTLeaderEVARiot + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT leader + suffix: ERTRole, Riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertleadereva + - type: RandomHumanoidSpawner + settings: ERTLeaderEVARiot + +- type: randomHumanoidSettings + id: ERTLeaderEVARiot + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-leader-name + description: ghost-role-information-ert-leader-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTLeaderGearEVARiot ] + +## ERT Janitor + +- type: entity + id: ADTRandomHumanoidSpawnerERTJanitor + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT janitor + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertjanitor + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTJanitor + +- type: randomHumanoidSettings + id: ADTERTJanitor + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: Loadout + prototypes: [ ADTERTJanitorGear ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTJanitorEVA + parent: ADTRandomHumanoidSpawnerERTJanitor + name: ERT janitor + suffix: ERTRole, Enviro EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertjanitoreva + - type: RandomHumanoidSpawner + settings: ADTERTJanitorEVA + +- type: randomHumanoidSettings + id: ADTERTJanitorEVA + parent: ADTERTJanitor + components: + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTJanitorGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTJanitorEVARiot + parent: ADTRandomHumanoidSpawnerERTJanitor + name: ERT janitor + suffix: ERTRole, Enviro EVA, Riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertjanitoreva + - type: RandomHumanoidSpawner + settings: ADTERTJanitorEVA + +- type: randomHumanoidSettings + id: ADTERTJanitorEVARiot + parent: ADTERTJanitor + components: + - type: GhostRole + name: ghost-role-information-ert-janitor-name + description: ghost-role-information-ert-janitor-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTJanitorGearEVARiot ] + +## ERT Engineer + +- type: entity + id: ADTRandomHumanoidSpawnerERTEngineer + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT engineer + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertengineer + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTEngineer + +- type: randomHumanoidSettings + id: ADTERTEngineer + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: Loadout + prototypes: [ ADTERTEngineerGear ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTEngineerEVA + parent: ADTRandomHumanoidSpawnerERTEngineer + name: ERT engineer + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertengineereva + - type: RandomHumanoidSpawner + settings: ADTERTEngineerEVA + +- type: randomHumanoidSettings + id: ADTERTEngineerEVA + parent: ADTERTEngineer + components: + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTEngineerGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTEngineerEVARiot + parent: ADTRandomHumanoidSpawnerERTEngineer + name: ERT engineer + suffix: ERTRole, EVA, Riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertengineereva + - type: RandomHumanoidSpawner + settings: ERTEngineerEVARiot + +- type: randomHumanoidSettings + id: ERTEngineerEVARiot + parent: ADTERTEngineer + components: + - type: GhostRole + name: ghost-role-information-ert-engineer-name + description: ghost-role-information-ert-engineer-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTEngineerGearEVARiot ] + +## ERT Security + +- type: entity + id: ADTRandomHumanoidSpawnerERTSecurity + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT security + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertsecurity + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTSecurity + +- type: randomHumanoidSettings + id: ADTERTSecurity + speciesBlacklist: + - Diona + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: Loadout + prototypes: [ ADTERTSecurityGear ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTSecurityEVA + parent: ADTRandomHumanoidSpawnerERTSecurity + name: ERT security + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertsecurityeva + - type: RandomHumanoidSpawner + settings: ADTERTSecurityEVA + +- type: randomHumanoidSettings + id: ADTERTSecurityEVA + parent: ADTERTSecurity + components: + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTSecurityGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTSecurityEVARiot + parent: ADTRandomHumanoidSpawnerERTSecurityEVA + suffix: ERTRole, EVA, riot + components: + - type: RandomHumanoidSpawner + settings: ADTERTSecurityEVARiot + +- type: randomHumanoidSettings + id: ADTERTSecurityEVARiot + parent: ADTERTSecurityEVA + components: + - type: GhostRole + name: ghost-role-information-ert-security-name + description: ghost-role-information-ert-security-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTSecurityGearEVARiot ] + +## ERT Medic + +- type: entity + id: ADTRandomHumanoidSpawnerERTMedical + parent: ADTRandomHumanoidSpawnerERTLeader + name: ERT medic + suffix: ERTRole, Basic + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertmedical + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: RandomHumanoidSpawner + settings: ADTERTMedical + +- type: randomHumanoidSettings + id: ADTERTMedical + parent: ADTERTLeader + components: + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: RandomMetadata + nameSegments: + - NamesFirstMilitary + - NamesLastMilitary + - type: Loadout + prototypes: [ ADTERTMedicalGear ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTMedicalEVA + parent: ADTRandomHumanoidSpawnerERTMedical + name: ERT medic + suffix: ERTRole, EVA + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertmedicaleva + - type: RandomHumanoidSpawner + settings: ADTERTMedicalEVA + +- type: randomHumanoidSettings + id: ADTERTMedicalEVA + parent: ADTERTMedical + components: + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTMedicalGearEVA ] + +- type: entity + id: ADTRandomHumanoidSpawnerERTMedicalEVARiot + parent: ADTRandomHumanoidSpawnerERTMedical + name: ERT medic + suffix: ERTRole, EVA, riot + components: + - type: Sprite + sprite: Markers/jobs.rsi + state: ertmedicaleva + - type: RandomHumanoidSpawner + settings: ADTERTMedicalEVARiot + +- type: randomHumanoidSettings + id: ADTERTMedicalEVARiot + parent: ADTERTMedical + components: + - type: GhostRole + name: ghost-role-information-ert-medical-name + description: ghost-role-information-ert-medical-description + rules: ghost-role-information-nonantagonist-rules + raffle: + settings: short + - type: Loadout + prototypes: [ ADTERTMedicalGearEVARiot ] + +# SPACE SEC + +- type: entity + parent: MobHuman + id: ADTSpaceSecCadet + name: Space Sec Cadet Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Cadet Random + id: ADTRandomHumanoidSpawnerSpaceSecCadet + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCadet + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCadet + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCadet ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecOfficer + name: Space Sec Officer Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Officer Random + id: ADTRandomHumanoidSpawnerSpaceSecOfficer + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecOfficer + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecOfficer + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecOfficer ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecPilot + name: Space Sec Pilot Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Pilot Random + id: ADTRandomHumanoidSpawnerSpaceSecPilot + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecPilot + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecPilot + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecPilot ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecCommander + name: Space Sec Commander Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Commander Random + id: ADTRandomHumanoidSpawnerSpaceSecCommander + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecCommander + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecCommander + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecCommander ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + parent: MobHuman + id: ADTSpaceSecService + name: Space Sec Service Human + suffix: Space Sec + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: RandomHumanoidAppearance + - type: Loadout + prototypes: [ SpaceSecService ] + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль + +- type: entity + name: Space Sec Service Random + id: ADTRandomHumanoidSpawnerSpaceSecService + suffix: Space Sec + components: + - type: Sprite + sprite: Mobs/Species/Reptilian/parts.rsi + state: full + - type: RandomHumanoidSpawner + settings: ADTSpaceSecService + - type: InitialInfectedExempt + +- type: randomHumanoidSettings + id: ADTSpaceSecService + components: + - type: MindShield + - type: GhostTakeoverAvailable + - type: Loadout + prototypes: [ SpaceSecService ] + - type: InitialInfectedExempt + - type: RandomHumanoidAppearance + - type: NpcFactionMember + factions: + - SpaceSecFaction + - Passive # Костыль \ No newline at end of file From 019bd98d80969fbc32ef4db5277ac7614b4d0cd8 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 18:27:49 +0300 Subject: [PATCH 20/28] fix locale/path/duplicates --- .../ADT/Entities/Clothing/Ears/headsets.ftl | 4 ---- .../Entities/Clothing/Uniforms/Jumpsuit.ftl | 10 --------- .../ADT/Entities/Mobs/player/humanoid.ftl | 10 --------- .../Objects/Device/encryption_keys.ftl | 2 -- .../Objects/Misc/identification_cards.ftl | 16 ------------- .../ru-RU/ADT/headset/headset-component.ftl | 2 ++ .../Entities/Clothing/Ears/headsets.ftl | 5 +++++ .../Clothing/Head/hardsuits-helmets.ftl | 0 .../Entities/Clothing/Neck/misc.ftl | 0 .../Clothing/OuterClothing/hardsuits.ftl | 0 .../Entities/Clothing/Uniforms/jumpsuits.ftl | 11 +++++++++ .../Entities/Mobs/Player/humanoid.ftl | 11 +++++++++ .../Objects/Device/encryption_keys.ftl | 6 +++++ .../Objects/Misc/identification_cards.ftl | 11 +++++++++ .../Entities/Objects/Weapons/Guns/turrets.ftl | 0 .../Structures/Doors/Airlock/access.ftl | 0 .../Structures/Doors/Airlock/airlock.ftl | 0 .../Structures/Doors/Airlock/shuttle.ftl | 0 .../Machines/Computers/computers.ftl | 0 .../Structures/Wallmount/Signs/posters.ftl | 0 .../Structures/Walls/space_sec_walls.ftl | 0 .../Structures/Windows/space_sec_window.ftl | 0 .../ADT/Entities/Mobs/Player/humanoid.yml | 1 - .../Drones/Drone-Antags/DroneAntag.yml | 6 ++--- .../Drones/Drone-Antags/DroneAntag_Body.yml | 0 .../Drones/Drone-Antags/DroneAntag_Core.yml | 8 +++---- .../Drones/Drone-Antags/DroneAntag_IPC.yml | 8 +++---- .../DroneAntag_InventoryTemplate.yml | 0 .../Drone-Antags/DroneAntag_Spawner.yml | 8 +++---- .../Drone-Antags/DroneAntag_StartingGear.yml | 0 .../Drones/Drone-Antags/DroneAntag_Turret.yml | 12 ---------- .../Drones/Drone-Antags/OLD_DroneAntag.yml | 0 .../Objects/Device/encryption_keys.yml | 18 ++++++++++++++- .../Channels/Channels/DroneAntagChannel.yml | 7 ------ .../ADT/KD/Channels/keys/DroneAntagKey.yml | 15 ------------- .../Prototypes/ADT/name_identifier_groups.yml | 21 ++++++++++++++++++ Resources/Prototypes/ADT/radio_channels.yml | 10 ++++++++- .../Prototypes/name_identifier_groups.yml | 21 ------------------ .../drone-charger.rsi/chargedrone.png | Bin .../drone-charger.rsi/chargeshell.png | Bin .../AntagDrones/drone-charger.rsi/l_hand.png | Bin .../AntagDrones/drone-charger.rsi/meta.json | 0 .../AntagDrones/drone-charger.rsi/r_hand.png | Bin .../drone-core-advanced.png | Bin .../drone-core-advanced.rsi/meta.json | 0 .../drone-core-basic.rsi/drone-core-basic.png | Bin .../drone-core-basic.rsi/meta.json | 0 .../drone-core-command.png | Bin .../drone-core-command.rsi/meta.json | 0 .../drone-core-elite.rsi/drone-core-elite.png | Bin .../drone-core-elite.rsi/meta.json | 0 .../drone-engineer.rsi/engdrone.png | Bin .../drone-engineer.rsi/engshell.png | Bin .../AntagDrones/drone-engineer.rsi/l_hand.png | Bin .../AntagDrones/drone-engineer.rsi/meta.json | 0 .../AntagDrones/drone-engineer.rsi/r_hand.png | Bin .../drone-ipc-soldier.rsi/ipc_full.png | Bin .../drone-ipc-soldier.rsi/ipc_icon.png | Bin .../drone-ipc-soldier.rsi/meta.json | 0 .../AntagDrones/drone-miner.rsi/l_hand.png | Bin .../AntagDrones/drone-miner.rsi/meta.json | 0 .../AntagDrones/drone-miner.rsi/minedrone.png | Bin .../AntagDrones/drone-miner.rsi/mineshell.png | Bin .../AntagDrones/drone-miner.rsi/r_hand.png | Bin 64 files changed, 108 insertions(+), 115 deletions(-) delete mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl delete mode 100644 Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl delete mode 100644 Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl delete mode 100644 Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl delete mode 100644 Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Clothing/Head/hardsuits-helmets.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Clothing/Neck/misc.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Clothing/OuterClothing/hardsuits.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Objects/Weapons/Guns/turrets.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Doors/Airlock/access.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Doors/Airlock/airlock.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Doors/Airlock/shuttle.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Machines/Computers/computers.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Wallmount/Signs/posters.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Walls/space_sec_walls.ftl (100%) rename Resources/Locale/ru-RU/ADT/{ => prototypes}/Entities/Structures/Windows/space_sec_window.ftl (100%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag.yml (98%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_Body.yml (100%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_Core.yml (85%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_IPC.yml (98%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml (100%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_Spawner.yml (81%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_StartingGear.yml (100%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/DroneAntag_Turret.yml (53%) rename Resources/Prototypes/ADT/{ => Entities/Mobs/Silicons}/Drones/Drone-Antags/OLD_DroneAntag.yml (100%) delete mode 100644 Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml delete mode 100644 Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml create mode 100644 Resources/Prototypes/ADT/name_identifier_groups.yml rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-charger.rsi/chargedrone.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-charger.rsi/chargeshell.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-charger.rsi/l_hand.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-charger.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-charger.rsi/r_hand.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-advanced.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-basic.rsi/drone-core-basic.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-basic.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-command.rsi/drone-core-command.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-command.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-elite.rsi/drone-core-elite.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-core-elite.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-engineer.rsi/engdrone.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-engineer.rsi/engshell.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-engineer.rsi/l_hand.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-engineer.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-engineer.rsi/r_hand.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-ipc-soldier.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-miner.rsi/l_hand.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-miner.rsi/meta.json (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-miner.rsi/minedrone.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-miner.rsi/mineshell.png (100%) rename Resources/Textures/ADT/Mobs/Silicon/{ => Drones}/AntagDrones/drone-miner.rsi/r_hand.png (100%) diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl deleted file mode 100644 index e22165a4f48..00000000000 --- a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Ears/headsets.ftl +++ /dev/null @@ -1,4 +0,0 @@ -ent-ADTSpaceSecClothingHeadset = гарнитура SPACE SEC - .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. -ent-ADTSpaceSecClothingHeadsetFull = полноразмерная гарнитура SPACE SEC - .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl b/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl deleted file mode 100644 index 74e7c39c039..00000000000 --- a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Uniforms/Jumpsuit.ftl +++ /dev/null @@ -1,10 +0,0 @@ -ent-ADTSpaceSecUniformCadet = комбинезон кадета SPACE SEC - .desc = Стандартная одежда корпорации SPACE SEC. -ent-ADTSpaceSecUniformPilot = комбинезон пилота SPACE SEC - .desc = Стандартная одежда корпорации SPACE SEC. -ent-ADTSpaceSecUniformCommander = комбинезон командира SPACE SEC - .desc = Стандартная одежда корпорации SPACE SEC. -ent-ADTSpaceSecUniformService = комбинезон сотрудника SPACE SEC - .desc = Стандартная одежда корпорации SPACE SEC. -ent-ADTSpaceSecUniformOfficer = комбинезон офицера SPACE SEC - .desc = Стандартная одежда корпорации SPACE SEC. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl b/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl deleted file mode 100644 index 7c3f1756727..00000000000 --- a/Resources/Locale/ru-RU/ADT/Entities/Mobs/player/humanoid.ftl +++ /dev/null @@ -1,10 +0,0 @@ -ent-ADTSpaceSecCadet = кадет SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC случайный -ent-ADTSpaceSecOfficer = офицер SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC случайный -ent-ADTSpaceSecPilot = пилот SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC случайный -ent-ADTSpaceSecCommander = командир SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC случайный -ent-ADTSpaceSecService = сотрудник SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC случайный diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl b/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl deleted file mode 100644 index 420f7fc143c..00000000000 --- a/Resources/Locale/ru-RU/ADT/Entities/Objects/Device/encryption_keys.ftl +++ /dev/null @@ -1,2 +0,0 @@ -ent-ADTEncryptionKeySpaceSec = ключ шифрования SPACE SEC - .desc = Ключ шифрования, используемый малоизвестной корпорацией. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl b/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl deleted file mode 100644 index 3f7082814c3..00000000000 --- a/Resources/Locale/ru-RU/ADT/Entities/Objects/Misc/identification_cards.ftl +++ /dev/null @@ -1,16 +0,0 @@ -ent-ADTPathologistIDCard = ID карта патологоанатома - .desc = { ent-IDCardStandard.desc } - -ent-ADTRoboticistIDCard = ID карта робототехника - .desc = { ent-IDCardStandard.desc } - -ent-ADTSpaceSecCadetIDCard = ID карта кадета SPACE SEC - .desc = Карта, необходимая для доступа в различные области станции. -ent-ADTSpaceSecOfficerIDCard = ID карта офицера SPACE SEC - .desc = Карта, необходимая для доступа в различные области станции. -ent-ADTSpaceSecPilotIDCard = ID карта пилота SPACE SEC - .desc = Карта, необходимая для доступа в различные области станции. -ent-ADTSpaceSecCommanderIDCard = ID карта командира SPACE SEC - .desc = Карта, необходимая для доступа в различные области станции. -ent-ADTSpaceSecServiceIDCard = ID карта сотрудника SPACE SEC - .desc = Карта, необходимая для доступа в различные области станции. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/headset/headset-component.ftl b/Resources/Locale/ru-RU/ADT/headset/headset-component.ftl index ddb67d55b5e..17144dbd56a 100644 --- a/Resources/Locale/ru-RU/ADT/headset/headset-component.ftl +++ b/Resources/Locale/ru-RU/ADT/headset/headset-component.ftl @@ -1 +1,3 @@ ADT-Lawyer-Channel-name = Юридический +ADT-SpaceSec-Channel-name = SPACE SEC линия +ADT-DroneAntag-Channel-name = Дроны \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Ears/headsets.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Ears/headsets.ftl index 75f46dc8e15..152aadb61f1 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Ears/headsets.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Ears/headsets.ftl @@ -4,3 +4,8 @@ ent-ClothingHeadsetLawyer = Гарнитура юриста .desc = Обычная гарнитура юриста. ent-ClothingHeadsetIAA = Гарнитура Агента Внутренних Дел .desc = Переговоры о нарушениях СРП происходят по этой гарнитуре. + +ent-ADTSpaceSecClothingHeadset = гарнитура SPACE SEC + .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. +ent-ADTSpaceSecClothingHeadsetFull = полноразмерная гарнитура SPACE SEC + .desc = Модифицированный модульный интерком, надеваемый на голову. Принимает ключи шифрования. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Clothing/Head/hardsuits-helmets.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Neck/misc.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Clothing/Neck/misc.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Neck/misc.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/OuterClothing/hardsuits.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Clothing/OuterClothing/hardsuits.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/OuterClothing/hardsuits.ftl diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Uniforms/jumpsuits.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Uniforms/jumpsuits.ftl index 10e47136346..dfb2cc82414 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Uniforms/jumpsuits.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Uniforms/jumpsuits.ftl @@ -8,3 +8,14 @@ ent-ADTClothingUniformPathologistSuitAlt = чёрный костюм патол .desc = Лёгкий комбинезон для работника морга. Более угрюмая версия. ent-ADTClothingUniformPathologistSkirtAlt = чёрная юбка-костюм патологоанатома .desc = Лёгкая юбка-комбинезон для работницы морга. Более угрюмая версия. + +ent-ADTSpaceSecUniformCadet = комбинезон кадета SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformPilot = комбинезон пилота SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformCommander = комбинезон командира SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformService = комбинезон сотрудника SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. +ent-ADTSpaceSecUniformOfficer = комбинезон офицера SPACE SEC + .desc = Стандартная одежда корпорации SPACE SEC. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl index d1d6d84bb26..a42c35ab9b8 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl @@ -47,3 +47,14 @@ ent-ADTRandomHumanoidSpawnerERTMedicalEVA = ОБР офицер сб ent-ADTRandomHumanoidSpawnerERTMedicalEVARiot = ОБР офицер сб .suffix = Броня EVA riot, против бунтов .desc = { ent-RandomHumanoidSpawnerERTLeaderEVA.desc } + +ent-ADTSpaceSecCadet = кадет SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC случайный +ent-ADTSpaceSecOfficer = офицер SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC случайный +ent-ADTSpaceSecPilot = пилот SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC случайный +ent-ADTSpaceSecCommander = командир SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC случайный +ent-ADTSpaceSecService = сотрудник SPACE SEC человек +ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC случайный \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Device/encryption_keys.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Device/encryption_keys.ftl index f3484952b83..158a0d65542 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Device/encryption_keys.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Device/encryption_keys.ftl @@ -1,2 +1,8 @@ ent-ADTEncryptionKeyLawyer = Ключ шифрования юридического отдела. .desc = Переговоры особой важности происходят по этой частоте. + +ent-ADTEncryptionKeySpaceSec = ключ шифрования SPACE SEC + .desc = Ключ шифрования, используемый малоизвестной корпорацией. + +ent-ADTEncryptionKeyDroneAntag = ключ канала дронов + .desc = Ключ к доступу каналу дронов. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Misc/identification_cards.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Misc/identification_cards.ftl index a87586d412d..97a63d75dc3 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Misc/identification_cards.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Misc/identification_cards.ftl @@ -6,3 +6,14 @@ ent-ADTPathologistIDCard = ID карта патологоанатома ent-ADTRoboticistIDCard = ID карта робототехника .desc = { ent-IDCardStandard.desc } + +ent-ADTSpaceSecCadetIDCard = ID карта кадета SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecOfficerIDCard = ID карта офицера SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecPilotIDCard = ID карта пилота SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecCommanderIDCard = ID карта командира SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. +ent-ADTSpaceSecServiceIDCard = ID карта сотрудника SPACE SEC + .desc = Карта, необходимая для доступа в различные области станции. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/turrets.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Objects/Weapons/Guns/turrets.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/turrets.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/access.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/access.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/access.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlock.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/airlock.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlock.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/shuttle.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Doors/Airlock/shuttle.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/shuttle.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Machines/Computers/computers.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Machines/Computers/computers.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Machines/Computers/computers.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Wallmount/Signs/posters.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Wallmount/Signs/posters.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Wallmount/Signs/posters.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/space_sec_walls.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Walls/space_sec_walls.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/space_sec_walls.ftl diff --git a/Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/space_sec_window.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/Entities/Structures/Windows/space_sec_window.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/space_sec_window.ftl diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml index 75cf98458d5..f45191ad5e0 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml @@ -1,5 +1,4 @@ - - type: entity id: ADTRandomHumanoidSpawnerERTLeader name: ERT leader diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml similarity index 98% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml index 24ad23aa91d..db2dfa71188 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml @@ -256,7 +256,7 @@ drawdepth: Mobs layers: - state: minedrone - sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi map: ["base"] - type: MovementIgnoreGravity - type: Fixtures @@ -413,7 +413,7 @@ drawdepth: Mobs layers: - state: engdrone - sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi map: ["base"] - type: MovementIgnoreGravity - type: Fixtures @@ -571,7 +571,7 @@ drawdepth: Mobs layers: - state: chargedrone - sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi map: ["base"] - type: MovementIgnoreGravity - type: Fixtures diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Body.yml similarity index 100% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Body.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Body.yml diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml similarity index 85% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml index 884d7ecfd7a..7cbdcb764cb 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Core.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml @@ -7,7 +7,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi state: drone-core-basic - type: StaticPrice price: 1250 @@ -25,7 +25,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi state: drone-core-advanced - type: StaticPrice price: 2500 @@ -43,7 +43,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi state: drone-core-elite - type: StaticPrice price: 5000 @@ -62,7 +62,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi state: drone-core-command - type: StaticPrice price: 7500 diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_IPC.yml similarity index 98% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_IPC.yml index 630a3b3a686..a7c74dc82be 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_IPC.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_IPC.yml @@ -46,7 +46,7 @@ baseWalkSpeed: 3 baseSprintSpeed: 4 - type: Sprite - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi state: ipc_full noRot: true drawdepth: Mobs @@ -123,7 +123,7 @@ behaviors: - !type:GibBehavior {} - type: Icon - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi state: ipc_full - type: MindContainer showExamineInfo: true @@ -359,14 +359,14 @@ # playChance: 1 # popUp: silicon-power-low - type: Icon - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi state: ipc_full - type: Sprite noRot: true drawdepth: Mobs layers: - map: ["enum.DamageStateVisualLayers.Base"] - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi state: ipc_full - map: ["enum.HumanoidVisualLayers.Chest"] - map: ["enum.HumanoidVisualLayers.Head"] diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml similarity index 100% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Spawner.yml similarity index 81% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Spawner.yml index 9a9bb0c0986..e45c2eb1ebf 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Spawner.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Spawner.yml @@ -7,7 +7,7 @@ layers: - sprite: ADT/Markers/jobs.rsi state: green - - sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi + - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi state: mineshell - type: ConditionalSpawner prototypes: @@ -22,7 +22,7 @@ layers: - sprite: ADT/Markers/jobs.rsi state: green - - sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi + - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi state: engshell - type: ConditionalSpawner prototypes: @@ -37,7 +37,7 @@ layers: - sprite: ADT/Markers/jobs.rsi state: green - - sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi + - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi state: chargeshell - type: ConditionalSpawner prototypes: @@ -53,7 +53,7 @@ layers: - sprite: ADT/Markers/jobs.rsi state: green - - sprite: ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi + - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi state: ipc_icon - type: ConditionalSpawner prototypes: diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml similarity index 100% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_StartingGear.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml similarity index 53% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml index efd7b8e4a0f..d4cf94acf80 100644 --- a/Resources/Prototypes/ADT/Drones/Drone-Antags/DroneAntag_Turret.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml @@ -1,15 +1,3 @@ -- type: npcFaction - id: DroneAntag - hostile: - - SimpleHostile - - Syndicate - - Xeno - - Zombie - - Revolutionary - - NanoTrasen - - PetsNT - - Dragon - - type: entity parent: BaseWeaponTurret id: ADTWeaponTurretDroneAntag diff --git a/Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml similarity index 100% rename from Resources/Prototypes/ADT/Drones/Drone-Antags/OLD_DroneAntag.yml rename to Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml diff --git a/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml b/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml index dcfc24bb8f8..51d69e413cd 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml @@ -12,4 +12,20 @@ - type: Sprite layers: - state: crypt_gray - - state: sec_label \ No newline at end of file + - state: sec_label + +- type: entity + parent: EncryptionKey + id: ADTEncryptionKeyDroneAntag + name: drone encryption key + description: An encryption key used by drones. + components: + - type: EncryptionKey + channels: + - ADTDroneAntagChannel + - Common + defaultChannel: ADTDroneAntagChannel + - type: Sprite + layers: + - state: crypt_silver + - state: rd_label diff --git a/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml b/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml deleted file mode 100644 index 668f5f99f0c..00000000000 --- a/Resources/Prototypes/ADT/KD/Channels/Channels/DroneAntagChannel.yml +++ /dev/null @@ -1,7 +0,0 @@ -- type: radioChannel - id: ADTDroneAntagChannel - name: Дроны - keycode: 'й' - frequency: 1301 - color: "#690e0e" - longRange: true diff --git a/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml b/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml deleted file mode 100644 index 0525f422152..00000000000 --- a/Resources/Prototypes/ADT/KD/Channels/keys/DroneAntagKey.yml +++ /dev/null @@ -1,15 +0,0 @@ -- type: entity - parent: EncryptionKey - id: ADTEncryptionKeyDroneAntag - name: Ключ к каналу дронов - description: Ключ к доступу каналов дронов. - components: - - type: EncryptionKey - channels: - - ADTDroneAntagChannel - - Common - defaultChannel: ADTDroneAntagChannel - - type: Sprite - layers: - - state: crypt_silver - - state: rd_label diff --git a/Resources/Prototypes/ADT/name_identifier_groups.yml b/Resources/Prototypes/ADT/name_identifier_groups.yml new file mode 100644 index 00000000000..dc09b34da7e --- /dev/null +++ b/Resources/Prototypes/ADT/name_identifier_groups.yml @@ -0,0 +1,21 @@ + +- type: nameIdentifierGroup + id: ADTDroneAntagMiner + prefix: drone miner SD + fullName: true + minValue: 100 + maxValue: 999 + +- type: nameIdentifierGroup + id: ADTDroneAntagSoldier + prefix: drone soldier SD + fullName: true + minValue: 100 + maxValue: 999 + +- type: nameIdentifierGroup + id: ADTIPCAntag + prefix: BF + fullName: true + minValue: 100 + maxValue: 999 diff --git a/Resources/Prototypes/ADT/radio_channels.yml b/Resources/Prototypes/ADT/radio_channels.yml index 0b1ff975092..cf55c6dba16 100644 --- a/Resources/Prototypes/ADT/radio_channels.yml +++ b/Resources/Prototypes/ADT/radio_channels.yml @@ -8,8 +8,16 @@ - type: radioChannel id: ADTSpaceSecChannel - name: SPACE SEC линия + name: ADT-SpaceSec-Channel-name keycode: 'у' frequency: 1302 color: "#c8c3c0" + longRange: true + +- type: radioChannel + id: ADTDroneAntagChannel + name: ADT-DroneAntag-Channel-name + keycode: 'й' + frequency: 1301 + color: "#690e0e" longRange: true \ No newline at end of file diff --git a/Resources/Prototypes/name_identifier_groups.yml b/Resources/Prototypes/name_identifier_groups.yml index 6427aa13268..c1ea005df62 100644 --- a/Resources/Prototypes/name_identifier_groups.yml +++ b/Resources/Prototypes/name_identifier_groups.yml @@ -11,27 +11,6 @@ id: Holoparasite prefix: ГОЛО # Corvax-Localization -- type: nameIdentifierGroup - id: ADTDroneAntagMiner - prefix: drone miner SD - fullName: true - minValue: 100 - maxValue: 999 - -- type: nameIdentifierGroup - id: ADTDroneAntagSoldier - prefix: drone soldier SD - fullName: true - minValue: 100 - maxValue: 999 - -- type: nameIdentifierGroup - id: ADTIPCAntag - prefix: BF - fullName: true - minValue: 100 - maxValue: 999 - - type: nameIdentifierGroup id: MMI prefix: ЧМИ # Corvax-Localization diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargedrone.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/chargedrone.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargedrone.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/chargedrone.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargeshell.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/chargeshell.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/chargeshell.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/chargeshell.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/l_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/l_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/l_hand.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/r_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi/r_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-charger.rsi/r_hand.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-advanced.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/drone-core-basic.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/drone-core-basic.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/drone-core-basic.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/drone-core-basic.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-basic.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/drone-core-command.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/drone-core-command.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/drone-core-command.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/drone-core-command.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-command.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/drone-core-elite.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/drone-core-elite.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/drone-core-elite.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/drone-core-elite.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-core-elite.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engdrone.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/engdrone.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engdrone.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/engdrone.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engshell.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/engshell.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/engshell.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/engshell.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/l_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/l_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/l_hand.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/r_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi/r_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-engineer.rsi/r_hand.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/ipc_full.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/ipc_icon.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-ipc-soldier.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-ipc-soldier.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/l_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/l_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/l_hand.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/meta.json rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/minedrone.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/minedrone.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/minedrone.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/minedrone.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/mineshell.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/mineshell.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/mineshell.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/mineshell.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/r_hand.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi/r_hand.png rename to Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-miner.rsi/r_hand.png From bd5eddd11a92158d8a0d1de28306e54ad317505a Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 18:52:00 +0300 Subject: [PATCH 21/28] fix SpaceSec --- .../ADT/Entities/Mobs/Player/humanoid.yml | 10 ------- .../Machines/Computers/computers.yml | 4 +-- .../Structures/Wallmount/Signs/posters.yml | 28 +++++++++++++++++++ 3 files changed, 30 insertions(+), 12 deletions(-) diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml index f45191ad5e0..61059aec1a6 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml @@ -448,7 +448,6 @@ state: full - type: RandomHumanoidSpawner settings: ADTSpaceSecCadet - - type: InitialInfectedExempt - type: randomHumanoidSettings id: ADTSpaceSecCadet @@ -457,7 +456,6 @@ - type: GhostTakeoverAvailable - type: Loadout prototypes: [ SpaceSecCadet ] - - type: InitialInfectedExempt - type: RandomHumanoidAppearance - type: NpcFactionMember factions: @@ -490,7 +488,6 @@ state: full - type: RandomHumanoidSpawner settings: ADTSpaceSecOfficer - - type: InitialInfectedExempt - type: randomHumanoidSettings id: ADTSpaceSecOfficer @@ -499,7 +496,6 @@ - type: GhostTakeoverAvailable - type: Loadout prototypes: [ SpaceSecOfficer ] - - type: InitialInfectedExempt - type: RandomHumanoidAppearance - type: NpcFactionMember factions: @@ -532,7 +528,6 @@ state: full - type: RandomHumanoidSpawner settings: ADTSpaceSecPilot - - type: InitialInfectedExempt - type: randomHumanoidSettings id: ADTSpaceSecPilot @@ -541,7 +536,6 @@ - type: GhostTakeoverAvailable - type: Loadout prototypes: [ SpaceSecPilot ] - - type: InitialInfectedExempt - type: RandomHumanoidAppearance - type: NpcFactionMember factions: @@ -574,7 +568,6 @@ state: full - type: RandomHumanoidSpawner settings: ADTSpaceSecCommander - - type: InitialInfectedExempt - type: randomHumanoidSettings id: ADTSpaceSecCommander @@ -583,7 +576,6 @@ - type: GhostTakeoverAvailable - type: Loadout prototypes: [ SpaceSecCommander ] - - type: InitialInfectedExempt - type: RandomHumanoidAppearance - type: NpcFactionMember factions: @@ -616,7 +608,6 @@ state: full - type: RandomHumanoidSpawner settings: ADTSpaceSecService - - type: InitialInfectedExempt - type: randomHumanoidSettings id: ADTSpaceSecService @@ -625,7 +616,6 @@ - type: GhostTakeoverAvailable - type: Loadout prototypes: [ SpaceSecService ] - - type: InitialInfectedExempt - type: RandomHumanoidAppearance - type: NpcFactionMember factions: diff --git a/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml b/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml index 8e3535eb58e..61a84c7a258 100644 --- a/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml +++ b/Resources/Prototypes/ADT/Entities/Structures/Machines/Computers/computers.yml @@ -35,8 +35,8 @@ key: enum.IdCardConsoleUiKey.Key - type: UserInterface interfaces: - - key: enum.IdCardConsoleUiKey.Key - type: IdCardConsoleBoundUserInterface + enum.IdCardConsoleUiKey.Key: + type: IdCardConsoleBoundUserInterface - type: CrewManifestViewer ownerKey: enum.IdCardConsoleUiKey.Key - type: Sprite diff --git a/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml index b88227141f5..40a3e7c587c 100644 --- a/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml +++ b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml @@ -1,3 +1,31 @@ +- type: entity + parent: BaseSign + id: ADTPosterBaseKek + abstract: true + components: + - type: WallMount + arc: 360 + - type: Sprite + drawdepth: WallTops + sprite: ADT/Structures/Wallmounts/posters.rsi + snapCardinals: true + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 5 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Effects/poster_broken.ogg + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:SpawnEntitiesBehavior + spawn: + PosterBroken: + min: 1 + max: 1 + offset: 0 - type: entity parent: ADTPosterBaseKek From f466d4abf45e3b33d10d8633642b5ff1651c9615 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 19:23:04 +0300 Subject: [PATCH 22/28] fix SpaceSec x2 --- .../ADT/Entities/Clothing/OuterClothing/hardsuits.yml | 6 +++--- Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml | 6 +++--- .../Prototypes/ADT/StartingGear/SpaceSec/Commander.yml | 6 +++--- Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml | 6 +++--- Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml | 6 +++--- Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml | 6 +++--- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml b/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml index 3c291eaf138..424a4abf921 100644 --- a/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml +++ b/Resources/Prototypes/ADT/Entities/Clothing/OuterClothing/hardsuits.yml @@ -26,7 +26,7 @@ Heat: 0.4 Radiation: 0.4 Caustic: 0.85 - Stun: 0.65 +# Stun: 0.65 - type: ToggleableClothing clothingPrototype: ADTSpaceSecPilotHelm - type: ExplosionResistance @@ -59,7 +59,7 @@ Heat: 0.7 Radiation: 0.8 Caustic: 0.85 - Stun: 0.6 +# Stun: 0.6 - type: ToggleableClothing clothingPrototype: ADTSpaceSecOfficerHelm - type: ExplosionResistance @@ -92,7 +92,7 @@ Heat: 0.5 Radiation: 0.5 Caustic: 0.6 - Stun: 0.5 +# Stun: 0.5 - type: ToggleableClothing clothingPrototype: ADTSpaceSecCommanderHelm - type: ExplosionResistance diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml index 63e7852ba81..e907c8e5e55 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml @@ -7,10 +7,10 @@ eyes: ClothingEyesGlassesSunglasses id: ADTSpaceSecCadetIDCard ears: ADTSpaceSecClothingHeadset - underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesColorBlack outerClothing: ClothingOuterArmorBasic - underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear - underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear +# underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml index c2b619d3883..430e71f83ed 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml @@ -7,10 +7,10 @@ eyes: ClothingEyesGlassesSunglasses id: ADTSpaceSecCommanderIDCard ears: ADTSpaceSecClothingHeadsetFull - underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBasic - underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear - underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear +# underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml index 884d932c854..9c2af9f2960 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml @@ -7,10 +7,10 @@ eyes: ClothingEyesGlassesSunglasses id: ADTSpaceSecOfficerIDCard ears: ADTSpaceSecClothingHeadset - underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBulletproof - underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear - underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear +# underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml index c10fbee7aa6..af7ef4d014c 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml @@ -7,10 +7,10 @@ eyes: ClothingEyesGlassesSunglasses id: ADTSpaceSecPilotIDCard ears: ADTSpaceSecClothingHeadsetFull - underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBasic - underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear - underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear +# underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml index 0fa51e839b5..6fdd1987c44 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml @@ -6,8 +6,8 @@ shoes: ClothingShoesColorBlack id: ADTSpaceSecServiceIDCard ears: ADTSpaceSecClothingHeadset - underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken - underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear - underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear +# underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear +# underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear From fac18b889caea4a6095365373c36a4b5e90e26e4 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 19:40:09 +0300 Subject: [PATCH 23/28] fix SpaceSec x3 --- .../Catalog/Fills/Backpacks/StarterGear/backpack.yml | 10 ++++++++++ .../Catalog/Fills/Backpacks/StarterGear/duffelbag.yml | 10 ++++++++++ .../Catalog/Fills/Backpacks/StarterGear/satchel.yml | 9 +++++++++ .../Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml | 2 +- .../Prototypes/ADT/StartingGear/SpaceSec/Commander.yml | 2 +- .../Prototypes/ADT/StartingGear/SpaceSec/Officer.yml | 2 +- .../Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml | 2 +- .../Prototypes/ADT/StartingGear/SpaceSec/Service.yml | 2 +- 8 files changed, 34 insertions(+), 5 deletions(-) diff --git a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml index 7ee1d99a259..5a0299f056a 100644 --- a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml +++ b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml @@ -8,4 +8,14 @@ - id: BoxSurvivalMedical - id: BodyBagFolded # До добавления слота носков- id: ADTFootTag + - id: SpaceCash500 + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackFilled + noSpawn: true + components: + - type: StorageFill + contents: + - id: BoxSurvival - id: SpaceCash500 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/duffelbag.yml b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/duffelbag.yml index 20ec47270e9..3acab16ec6a 100644 --- a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/duffelbag.yml +++ b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/duffelbag.yml @@ -8,4 +8,14 @@ - id: BoxSurvivalMedical - id: BodyBagFolded # До добавления слота носков- id: ADTFootTag + - id: SpaceCash500 + +- type: entity + noSpawn: true + parent: ClothingBackpackDuffel + id: ClothingBackpackDuffelFilled + components: + - type: StorageFill + contents: + - id: BoxSurvival - id: SpaceCash500 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/satchel.yml b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/satchel.yml index 519b5bc6494..db33ef6265d 100644 --- a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/satchel.yml +++ b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/satchel.yml @@ -8,4 +8,13 @@ - id: BoxSurvivalMedical - id: BodyBagFolded # До добавления слота носков - id: ADTFootTag + - id: SpaceCash500 + +- type: entity + parent: ClothingBackpackSatchel + id: ClothingBackpackSatchelFilled + components: + - type: StorageFill + contents: + - id: BoxSurvival - id: SpaceCash500 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml index e907c8e5e55..8eb4cf3726d 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Cadet.yml @@ -8,7 +8,7 @@ id: ADTSpaceSecCadetIDCard ears: ADTSpaceSecClothingHeadset # underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear - socks: ClothingUnderwearSocksNormal +# socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesColorBlack outerClothing: ClothingOuterArmorBasic diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml index 430e71f83ed..865f4a2039f 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Commander.yml @@ -8,7 +8,7 @@ id: ADTSpaceSecCommanderIDCard ears: ADTSpaceSecClothingHeadsetFull # underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear - socks: ClothingUnderwearSocksNormal +# socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBasic diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml index 9c2af9f2960..6787191ec86 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Officer.yml @@ -8,7 +8,7 @@ id: ADTSpaceSecOfficerIDCard ears: ADTSpaceSecClothingHeadset # underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear - socks: ClothingUnderwearSocksNormal +# socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBulletproof diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml index af7ef4d014c..fb7612422ba 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Pilot.yml @@ -8,7 +8,7 @@ id: ADTSpaceSecPilotIDCard ears: ADTSpaceSecClothingHeadsetFull # underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear - socks: ClothingUnderwearSocksNormal +# socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken gloves: ClothingHandsGlovesCombat outerClothing: ClothingOuterArmorBasic diff --git a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml index 6fdd1987c44..d4de1116f63 100644 --- a/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml +++ b/Resources/Prototypes/ADT/StartingGear/SpaceSec/Service.yml @@ -7,7 +7,7 @@ id: ADTSpaceSecServiceIDCard ears: ADTSpaceSecClothingHeadset # underwearb: ClothingUnderwearBottomBoxersWhite # Sirena-Underwear - socks: ClothingUnderwearSocksNormal +# socks: ClothingUnderwearSocksNormal neck: ADTSpaceSecToken # underweart: ClothingUnderwearTopBraWhite # Sirena-Underwear # underwearb: ClothingUnderwearBottomPantiesWhite # Sirena-Underwear From 288d9b8312638cd847e9c2f8fb265b5dfd84f7e1 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Thu, 8 Aug 2024 20:06:33 +0300 Subject: [PATCH 24/28] fix StacitPrice --- .../Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml index db2dfa71188..8fa4cc00744 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag.yml @@ -25,7 +25,7 @@ - type: MovementIgnoreGravity - type: NoSlip - type: StaticPrice - price: 700 + price: 1275 - type: Fixtures fixtures: fix1: @@ -634,7 +634,7 @@ # - ShoesRequiredStepTriggerImmune - CannotSuicide - type: StaticPrice - price: 750 + price: 1275 # Frontier - languages mechanic - type: LanguageSpeaker speaks: From 58229107eb1a75d5886b3d1173171eca71854758 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Sat, 10 Aug 2024 23:48:29 +0300 Subject: [PATCH 25/28] review fixes --- .../Locale/ru-RU/ADT/access/SpaceSec.ftl | 6 -- .../ru-RU/ADT/prototypes/Access/accesses.ftl | 7 +++ .../Entities/Mobs/Player/humanoid.ftl | 25 +++++---- .../Walls/{space_sec_walls.ftl => walls.ftl} | 0 .../{space_sec_window.ftl => window.ftl} | 0 .../Entities/Clothing/Uniforms/Jumpsuit.yml | 55 ------------------- .../Entities/Clothing/Uniforms/Jumpsuits.yml | 55 +++++++++++++++++++ .../ADT/Entities/Mobs/Player/humanoid.yml | 30 +++++----- .../Walls/{space_sec_wall.yml => walls.yml} | 0 .../{space_sec_window.yml => window.yml} | 0 .../Prototypes/ADT/StatusEffects/job.yml | 43 --------------- Resources/Prototypes/ADT/StatusIcon/job.yml | 44 +++++++++++++++ .../ADT/{ai_faction.yml => ai_factions.yml} | 0 13 files changed, 136 insertions(+), 129 deletions(-) delete mode 100644 Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl rename Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/{space_sec_walls.ftl => walls.ftl} (100%) rename Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/{space_sec_window.ftl => window.ftl} (100%) delete mode 100644 Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml rename Resources/Prototypes/ADT/Entities/Structures/Walls/{space_sec_wall.yml => walls.yml} (100%) rename Resources/Prototypes/ADT/Entities/Structures/Windows/{space_sec_window.yml => window.yml} (100%) delete mode 100644 Resources/Prototypes/ADT/StatusEffects/job.yml rename Resources/Prototypes/ADT/{ai_faction.yml => ai_factions.yml} (100%) diff --git a/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl b/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl deleted file mode 100644 index f61866de04c..00000000000 --- a/Resources/Locale/ru-RU/ADT/access/SpaceSec.ftl +++ /dev/null @@ -1,6 +0,0 @@ -id-card-access-level-spacesec-official = Служебный SEC -id-card-access-level-spacesec-maintenance = Техобслуживание SEC -id-card-access-level-spacesec-external = Внешний SEC -id-card-access-level-spacesec-security = Служба Безопасности SEC -id-card-access-level-spacesec-armory = Оружейный SEC -id-card-access-level-spacesec-command = Командование SEC \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Access/accesses.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Access/accesses.ftl index 0c64681745c..771d4b0a462 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Access/accesses.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Access/accesses.ftl @@ -1,2 +1,9 @@ id-card-access-level-iaa = Агент Внутренних Дел id-card-access-level-magistrate = Магистрат + +id-card-access-level-spacesec-official = Служебный SEC +id-card-access-level-spacesec-maintenance = Техобслуживание SEC +id-card-access-level-spacesec-external = Внешний SEC +id-card-access-level-spacesec-security = Служба Безопасности SEC +id-card-access-level-spacesec-armory = Оружейный SEC +id-card-access-level-spacesec-command = Командование SEC \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl index a42c35ab9b8..48bd5e9856f 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl @@ -48,13 +48,18 @@ ent-ADTRandomHumanoidSpawnerERTMedicalEVARiot = ОБР офицер сб .suffix = Броня EVA riot, против бунтов .desc = { ent-RandomHumanoidSpawnerERTLeaderEVA.desc } -ent-ADTSpaceSecCadet = кадет SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC случайный -ent-ADTSpaceSecOfficer = офицер SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC случайный -ent-ADTSpaceSecPilot = пилот SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC случайный -ent-ADTSpaceSecCommander = командир SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC случайный -ent-ADTSpaceSecService = сотрудник SPACE SEC человек -ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC случайный \ No newline at end of file +ent-ADTSpaceSecCadet = кадет SPACE SEC +ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC + .suffix = Space Sec, Случайный +ent-ADTSpaceSecOfficer = офицер SPACE SEC +ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC + .suffix = Space Sec, Случайный +ent-ADTSpaceSecPilot = пилот SPACE SEC +ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC + .suffix = Space Sec, Случайный +ent-ADTSpaceSecCommander = командир SPACE SEC +ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC + .suffix = Space Sec, Случайный +ent-ADTSpaceSecService = сотрудник SPACE SEC +ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC + .suffix = Space Sec, Случайный \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/space_sec_walls.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/walls.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/space_sec_walls.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Walls/walls.ftl diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/space_sec_window.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/window.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/space_sec_window.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Windows/window.ftl diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml b/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml deleted file mode 100644 index d4d1580d0f0..00000000000 --- a/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuit.yml +++ /dev/null @@ -1,55 +0,0 @@ - -- type: entity - parent: ClothingUniformBase - id: ADTSpaceSecUniformCadet - name: space sec cadet uniform - description: standart space sec uniform - components: - - type: Sprite - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi - - type: Clothing - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi - -- type: entity - parent: ClothingUniformBase - id: ADTSpaceSecUniformPilot - name: space sec pilot uniform - description: standart space sec uniform - components: - - type: Sprite - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi - - type: Clothing - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi - -- type: entity - parent: ClothingUniformBase - id: ADTSpaceSecUniformCommander - name: space sec commander uniform - description: standart space sec uniform - components: - - type: Sprite - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi - - type: Clothing - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi - -- type: entity - parent: ClothingUniformBase - id: ADTSpaceSecUniformService - name: space sec service uniform - description: standart space sec uniform - components: - - type: Sprite - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi - - type: Clothing - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi - -- type: entity - parent: ClothingUniformBase - id: ADTSpaceSecUniformOfficer - name: space sec officer uniform - description: standart space sec uniform - components: - - type: Sprite - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi - - type: Clothing - sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuits.yml b/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuits.yml index 014d6f6474a..9d6eebd2120 100644 --- a/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuits.yml +++ b/Resources/Prototypes/ADT/Entities/Clothing/Uniforms/Jumpsuits.yml @@ -8,3 +8,58 @@ sprite: ADT/Clothing/Uniforms/Jumpsuit/white-diplomat-suit.rsi - type: Clothing sprite: ADT/Clothing/Uniforms/Jumpsuit/white-diplomat-suit.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformCadet + name: space sec cadet uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_cadet.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformPilot + name: space sec pilot uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_pilot.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformCommander + name: space sec commander uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_commander.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformService + name: space sec service uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_service.rsi + +- type: entity + parent: ClothingUniformBase + id: ADTSpaceSecUniformOfficer + name: space sec officer uniform + description: standart space sec uniform + components: + - type: Sprite + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi + - type: Clothing + sprite: ADT/Clothing/Uniforms/Jumpsuit/space_sec_officer.rsi \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml index 61059aec1a6..95ac035e6e1 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml +++ b/Resources/Prototypes/ADT/Entities/Mobs/Player/humanoid.yml @@ -425,7 +425,7 @@ - type: entity parent: MobHuman id: ADTSpaceSecCadet - name: Space Sec Cadet Human + name: Space Sec Cadet suffix: Space Sec components: - type: MindShield @@ -439,9 +439,9 @@ - Passive # Костыль - type: entity - name: Space Sec Cadet Random + name: Space Sec Cadet id: ADTRandomHumanoidSpawnerSpaceSecCadet - suffix: Space Sec + suffix: Space Sec, Random components: - type: Sprite sprite: Mobs/Species/Reptilian/parts.rsi @@ -465,7 +465,7 @@ - type: entity parent: MobHuman id: ADTSpaceSecOfficer - name: Space Sec Officer Human + name: Space Sec Officer suffix: Space Sec components: - type: MindShield @@ -479,9 +479,9 @@ - Passive # Костыль - type: entity - name: Space Sec Officer Random + name: Space Sec Officer id: ADTRandomHumanoidSpawnerSpaceSecOfficer - suffix: Space Sec + suffix: Space Sec, Random components: - type: Sprite sprite: Mobs/Species/Reptilian/parts.rsi @@ -505,7 +505,7 @@ - type: entity parent: MobHuman id: ADTSpaceSecPilot - name: Space Sec Pilot Human + name: Space Sec Pilot suffix: Space Sec components: - type: MindShield @@ -519,9 +519,9 @@ - Passive # Костыль - type: entity - name: Space Sec Pilot Random + name: Space Sec Pilot id: ADTRandomHumanoidSpawnerSpaceSecPilot - suffix: Space Sec + suffix: Space Sec, Random components: - type: Sprite sprite: Mobs/Species/Reptilian/parts.rsi @@ -545,7 +545,7 @@ - type: entity parent: MobHuman id: ADTSpaceSecCommander - name: Space Sec Commander Human + name: Space Sec Commander suffix: Space Sec components: - type: MindShield @@ -559,9 +559,9 @@ - Passive # Костыль - type: entity - name: Space Sec Commander Random + name: Space Sec Commander id: ADTRandomHumanoidSpawnerSpaceSecCommander - suffix: Space Sec + suffix: Space Sec, Random components: - type: Sprite sprite: Mobs/Species/Reptilian/parts.rsi @@ -585,7 +585,7 @@ - type: entity parent: MobHuman id: ADTSpaceSecService - name: Space Sec Service Human + name: Space Sec Service suffix: Space Sec components: - type: MindShield @@ -599,9 +599,9 @@ - Passive # Костыль - type: entity - name: Space Sec Service Random + name: Space Sec Service id: ADTRandomHumanoidSpawnerSpaceSecService - suffix: Space Sec + suffix: Space Sec, Random components: - type: Sprite sprite: Mobs/Species/Reptilian/parts.rsi diff --git a/Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml b/Resources/Prototypes/ADT/Entities/Structures/Walls/walls.yml similarity index 100% rename from Resources/Prototypes/ADT/Entities/Structures/Walls/space_sec_wall.yml rename to Resources/Prototypes/ADT/Entities/Structures/Walls/walls.yml diff --git a/Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml b/Resources/Prototypes/ADT/Entities/Structures/Windows/window.yml similarity index 100% rename from Resources/Prototypes/ADT/Entities/Structures/Windows/space_sec_window.yml rename to Resources/Prototypes/ADT/Entities/Structures/Windows/window.yml diff --git a/Resources/Prototypes/ADT/StatusEffects/job.yml b/Resources/Prototypes/ADT/StatusEffects/job.yml deleted file mode 100644 index 23db2382447..00000000000 --- a/Resources/Prototypes/ADT/StatusEffects/job.yml +++ /dev/null @@ -1,43 +0,0 @@ -- type: statusIcon - parent: JobIcon - id: JobIconADTPathologist - icon: - sprite: /Textures/ADT/Interface/Misc/job_icons.rsi - state: ADTPathologist - -#SPACE SEC - -- type: statusIcon - parent: JobIcon - id: JobIconADTSpaceSecCadet - icon: - sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi - state: ADTSpaceSecCadetStatusIcon - -- type: statusIcon - parent: JobIcon - id: JobIconADTSpaceSecOfficer - icon: - sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi - state: ADTSpaceSecOfficerStatusIcon - -- type: statusIcon - parent: JobIcon - id: JobIconADTSpaceSecPilot - icon: - sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi - state: ADTSpaceSecPilotStatusIcon - -- type: statusIcon - parent: JobIcon - id: JobIconADTSpaceSecCommander - icon: - sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi - state: ADTSpaceSecCommanderStatusIcon - -- type: statusIcon - parent: JobIcon - id: JobIconADTSpaceSecService - icon: - sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi - state: ADTSpaceSecServiceStatusIcon diff --git a/Resources/Prototypes/ADT/StatusIcon/job.yml b/Resources/Prototypes/ADT/StatusIcon/job.yml index aef4c3dbf9d..9be5fa2948a 100644 --- a/Resources/Prototypes/ADT/StatusIcon/job.yml +++ b/Resources/Prototypes/ADT/StatusIcon/job.yml @@ -4,3 +4,47 @@ icon: sprite: /Textures/ADT/Interface/Misc/job_icons.rsi state: Magistrat + +- type: statusIcon + parent: JobIcon + id: JobIconADTPathologist + icon: + sprite: /Textures/ADT/Interface/Misc/job_icons.rsi + state: ADTPathologist + +#SPACE SEC + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecCadet + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecCadetStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecOfficer + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecOfficerStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecPilot + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecPilotStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecCommander + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecCommanderStatusIcon + +- type: statusIcon + parent: JobIcon + id: JobIconADTSpaceSecService + icon: + sprite: /Textures/ADT/Interface/Misc/space_sec_icons.rsi + state: ADTSpaceSecServiceStatusIcon diff --git a/Resources/Prototypes/ADT/ai_faction.yml b/Resources/Prototypes/ADT/ai_factions.yml similarity index 100% rename from Resources/Prototypes/ADT/ai_faction.yml rename to Resources/Prototypes/ADT/ai_factions.yml From 1c49d573be813087eda99db0a3796aee57b3e1c1 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 14 Aug 2024 21:23:38 +0300 Subject: [PATCH 26/28] stepka fixes --- .../Prototypes}/DroneAntag_Body.yml | 0 .../Fills/Backpacks/StarterGear/backpack.yml | 46 +- .../Spawners}/DroneAntag_Spawner.yml | 0 .../Drone-Antags/DroneAntag_StartingGear.yml | 106 --- .../Drones/Drone-Antags/DroneAntag_Turret.yml | 9 - .../Drones/Drone-Antags/OLD_DroneAntag.yml | 761 ------------------ .../Objects/Device/encryption_keys.yml | 31 - .../Objects/Devices/encryption_keys.yml | 31 + .../Objects/Misc/identification_cards.yml | 20 +- .../Specific}/DroneAntag_Core.yml | 8 +- .../Objects/Specific/DroneAntag_OreBags.yml | 28 + .../Entities/Objects/Weapons/Guns/turrets.yml | 9 + .../Structures/Wallmount/Signs/posters.yml | 2 +- .../DroneAntag_InventoryTemplate.yml | 0 .../StartingGear/DroneAntag_StartingGear.yml | 33 + .../id-spacesec-cadet.png} | Bin .../id-spacesec-commander.png} | Bin .../id-spacesec-officer.png} | Bin .../id-spacesec-pilot.png} | Bin .../id-spacesec-service.png} | Bin .../ADT/Objects/Misc/id_cards.rsi/meta.json | 17 +- .../space_sec_ids.rsi/default-inhand-left.png | Bin 177 -> 0 bytes .../default-inhand-right.png | Bin 179 -> 0 bytes .../Misc/space_sec_ids.rsi/default.png | Bin 355 -> 0 bytes .../Objects/Misc/space_sec_ids.rsi/meta.json | 37 - .../drone-core-advanced.png | Bin .../drone-core-advanced.rsi/meta.json | 0 .../drone-core-basic.rsi/drone-core-basic.png | Bin .../Specific}/drone-core-basic.rsi/meta.json | 0 .../drone-core-command.png | Bin .../drone-core-command.rsi/meta.json | 0 .../drone-core-elite.rsi/drone-core-elite.png | Bin .../Specific}/drone-core-elite.rsi/meta.json | 0 .../Glass/space_sec_shuttle.rsi/meta.json | 2 +- .../meta.json | 0 .../poster_spacesec.png | Bin 36 files changed, 178 insertions(+), 962 deletions(-) rename Resources/Prototypes/ADT/{Entities/Mobs/Silicons/Drones/Drone-Antags => Body/Prototypes}/DroneAntag_Body.yml (100%) rename Resources/Prototypes/ADT/Entities/{Mobs/Silicons/Drones/Drone-Antags => Markers/Spawners}/DroneAntag_Spawner.yml (100%) delete mode 100644 Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml delete mode 100644 Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml delete mode 100644 Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml delete mode 100644 Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml rename Resources/Prototypes/ADT/Entities/{Mobs/Silicons/Drones/Drone-Antags => Objects/Specific}/DroneAntag_Core.yml (85%) create mode 100644 Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_OreBags.yml rename Resources/Prototypes/ADT/{Entities/Mobs/Silicons/Drones/Drone-Antags => InventoryTemplates}/DroneAntag_InventoryTemplate.yml (100%) create mode 100644 Resources/Prototypes/ADT/StartingGear/DroneAntag_StartingGear.yml rename Resources/Textures/ADT/Objects/Misc/{space_sec_ids.rsi/id-cadet.png => id_cards.rsi/id-spacesec-cadet.png} (100%) rename Resources/Textures/ADT/Objects/Misc/{space_sec_ids.rsi/id-commander.png => id_cards.rsi/id-spacesec-commander.png} (100%) rename Resources/Textures/ADT/Objects/Misc/{space_sec_ids.rsi/id-officer.png => id_cards.rsi/id-spacesec-officer.png} (100%) rename Resources/Textures/ADT/Objects/Misc/{space_sec_ids.rsi/id-pilot.png => id_cards.rsi/id-spacesec-pilot.png} (100%) rename Resources/Textures/ADT/Objects/Misc/{space_sec_ids.rsi/id-service.png => id_cards.rsi/id-spacesec-service.png} (100%) delete mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png delete mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png delete mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png delete mode 100644 Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/meta.json rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-advanced.rsi/drone-core-advanced.png (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-advanced.rsi/meta.json (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-basic.rsi/drone-core-basic.png (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-basic.rsi/meta.json (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-command.rsi/drone-core-command.png (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-command.rsi/meta.json (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-elite.rsi/drone-core-elite.png (100%) rename Resources/Textures/ADT/{Mobs/Silicon/Drones/AntagDrones => Objects/Specific}/drone-core-elite.rsi/meta.json (100%) rename Resources/Textures/ADT/Structures/Wallmounts/{space_sec_poster.rsi => signs.rsi}/meta.json (100%) rename Resources/Textures/ADT/Structures/Wallmounts/{space_sec_poster.rsi => signs.rsi}/poster_spacesec.png (100%) diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Body.yml b/Resources/Prototypes/ADT/Body/Prototypes/DroneAntag_Body.yml similarity index 100% rename from Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Body.yml rename to Resources/Prototypes/ADT/Body/Prototypes/DroneAntag_Body.yml diff --git a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml index 5a0299f056a..aa021ce7464 100644 --- a/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml +++ b/Resources/Prototypes/ADT/Catalog/Fills/Backpacks/StarterGear/backpack.yml @@ -18,4 +18,48 @@ - type: StorageFill contents: - id: BoxSurvival - - id: SpaceCash500 \ No newline at end of file + - id: SpaceCash500 + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneMiner + name: backpack antag drone miner + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: MiningDrill + - id: WeaponProtoKineticAccelerator + - id: JawsOfLife + - id: PowerDrill + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneEngineer + name: backpack antag drone engineer + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: WelderIndustrial + - id: JawsOfLife + - id: PowerDrill + - id: Multitool + - id: trayScanner + +- type: entity + parent: ClothingBackpack + id: ClothingBackpackAntagDroneCharger + name: backpack antag drone charger + components: + - type: Sprite + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + - type: Unremoveable + - type: StorageFill + contents: + - id: JawsOfLife + - id: WeaponLaserGun \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Spawner.yml b/Resources/Prototypes/ADT/Entities/Markers/Spawners/DroneAntag_Spawner.yml similarity index 100% rename from Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Spawner.yml rename to Resources/Prototypes/ADT/Entities/Markers/Spawners/DroneAntag_Spawner.yml diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml deleted file mode 100644 index 140a929a8f5..00000000000 --- a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_StartingGear.yml +++ /dev/null @@ -1,106 +0,0 @@ -- type: entity - name: ore bag - id: OreBagAntagDrone - parent: BaseStorageItem - suffix: Antag Drone - components: - - type: MagnetPickup - - type: Sprite - sprite: Objects/Specific/Mining/ore_bag.rsi - state: icon - - type: Clothing - sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite - quickEquip: false - slots: - - belt - - type: Item - size: Ginormous - - type: Storage - maxItemSize: Normal - grid: - - 0,0,9,3 - quickInsert: true - areaInsert: true - whitelist: - tags: - - ArtifactFragment - - Ore - - type: Dumpable - -- type: entity - parent: ClothingBackpack - id: ClothingBackpackAntagDroneMiner - name: backpack antag drone miner - components: - - type: Sprite - sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite - - type: Unremoveable - - type: StorageFill - contents: - - id: MiningDrill - - id: WeaponProtoKineticAccelerator - - id: JawsOfLife - - id: PowerDrill - -- type: entity - parent: ClothingBackpack - id: ClothingBackpackAntagDroneEngineer - name: backpack antag drone engineer - components: - - type: Sprite - sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite - - type: Unremoveable - - type: StorageFill - contents: - - id: WelderIndustrial - - id: JawsOfLife - - id: PowerDrill - - id: Multitool - - id: trayScanner - -- type: entity - parent: ClothingBackpack - id: ClothingBackpackAntagDroneCharger - name: backpack antag drone charger - components: - - type: Sprite - sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite - - type: Unremoveable - - type: StorageFill - contents: - - id: JawsOfLife - - id: WeaponLaserGun - -- type: startingGear - id: ADTAntagDroneGearMiner - equipment: - back: ClothingBackpackAntagDroneMiner - belt: OreBagAntagDrone - # inhand: - # - MiningDrill - # - WeaponProtoKineticAccelerator - # - JawsOfLife - # - PowerDrill - # - OreBag - -- type: startingGear - id: ADTAntagDroneGearEngineer - equipment: - back: ClothingBackpackAntagDroneEngineer - belt: OreBagAntagDrone - # inhand: - # - WelderIndustrial - # - JawsOfLife - # - PowerDrill - # - Multitool - # - trayScanner - # - OreBag - -- type: startingGear - id: ADTAntagDroneGearCharger - equipment: - back: ClothingBackpackAntagDroneCharger - belt: OreBagAntagDrone - # inhand: - # - JawsOfLife - diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml deleted file mode 100644 index d4cf94acf80..00000000000 --- a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Turret.yml +++ /dev/null @@ -1,9 +0,0 @@ -- type: entity - parent: BaseWeaponTurret - id: ADTWeaponTurretDroneAntag - suffix: Drone Antag - components: - - type: NpcFactionMember - factions: - - DroneAntag - diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml b/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml deleted file mode 100644 index 97d05385cf6..00000000000 --- a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/OLD_DroneAntag.yml +++ /dev/null @@ -1,761 +0,0 @@ -# - type: entity -# save: false -# abstract: true -# id: ADTDroneAntagBaseOLD -# components: -# - type: MindContainer -# - type: InputMover -# - type: MobMover -# - type: Reactive -# groups: -# Acidic: [Touch] -# - type: Input -# context: "human" -# - type: DamageOnHighSpeedImpact -# damage: -# types: -# Blunt: 5 -# soundHit: -# collection: MetalThud -# - type: Clickable -# - type: Damageable -# damageContainer: Inorganic -# - type: Bloodstream -# bloodReagent: Oil -# bloodlossDamage: -# types: -# Bloodloss: -# 1 -# bloodlossHealDamage: -# types: -# Bloodloss: -# -1 -# - type: InteractionOutline -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# # Circles, cuz rotation of rectangles looks very bad -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - MobMask -# layer: -# - MobLayer -# - type: MovementSpeedModifier -# baseWalkSpeed : 4 -# baseSprintSpeed : 3 -# - type: Sprite -# noRot: true -# drawdepth: Mobs -# - type: Physics -# bodyType: KinematicController -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Drone -# - type: IntrinsicRadioReceiver -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: DoAfter -# - type: Pullable -# - type: Examiner -# - type: Puller -# - type: StandingState -# - type: Alerts -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon - -# - type: entity -# name: drone miner -# id: ADTDroneAntagMinerOLD -# parent: ADTDroneAntagBase -# components: -# - type: Drone -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# - type: Strippable -# - type: UserInterface -# interfaces: -# - key: enum.StrippingUiKey.Key -# type: StrippableBoundUserInterface -# # - key: enum.SiliconLawsUiKey.Key -# # type: SiliconLawBoundUserInterface -# # - type: SiliconLawBound -# # - type: SiliconLawProvider -# # laws: Drone -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - Stun -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: -# types: -# Heat : 1 #per second, scales with temperature & other constants -# - type: Sprite -# drawdepth: Mobs -# layers: -# - state: mineshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - FlyingMobMask -# layer: -# - FlyingMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: mineshell } -# On: { state: minedrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# color: "#d7f705" -# radius: 7 -# energy: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# - CannotSuicide -# - type: StaticPrice -# price: 250 -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon -# - type: CombatMode -# - type: MeleeWeapon -# hidden: true -# damage: -# groups: -# Brute: 5 -# - type: EyeProtection -# protectionTime: 12 -# - type: TypingIndicator -# proto: robot -# - type: Speech -# speechSounds: Pai -# - type: ZombieImmune -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Human - - - -# - type: entity -# name: drone soldier -# id: ADTDroneAntagEngineerOLD -# parent: ADTDroneAntagBase -# components: -# - type: Drone -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# - type: Strippable -# - type: UserInterface -# interfaces: -# - key: enum.StrippingUiKey.Key -# type: StrippableBoundUserInterface -# # - key: enum.SiliconLawsUiKey.Key -# # type: SiliconLawBoundUserInterface -# # - type: SiliconLawBound -# # - type: SiliconLawProvider -# # laws: Drone -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - Stun -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: -# types: -# Heat : 1 #per second, scales with temperature & other constants -# # - type: Sprite -# # drawdepth: Mobs -# # layers: -# # - state: engshell -# # sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi -# # map: ["base"] -# - type: Sprite -# drawdepth: Mobs -# layers: -# - state: engshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-engineer.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - FlyingMobMask -# layer: -# - FlyingMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: engshell } -# On: { state: engdrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# color: "#d7f705" -# radius: 7 -# energy: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# - CannotSuicide -# - type: StaticPrice -# price: 250 -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon -# - type: CombatMode -# - type: MeleeWeapon -# hidden: true -# damage: -# groups: -# Brute: 5 -# - type: EyeProtection -# protectionTime: 12 -# - type: TypingIndicator -# proto: robot -# - type: Speech -# speechSounds: Pai -# - type: ZombieImmune -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Human - - - -# - type: entity -# name: drone sodlier -# id: ADTDroneAntagChargerOLD -# parent: ADTDroneAntagBase -# components: -# - type: Drone -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# - type: Strippable -# - type: UserInterface -# interfaces: -# - key: enum.StrippingUiKey.Key -# type: StrippableBoundUserInterface -# # - key: enum.SiliconLawsUiKey.Key -# # type: SiliconLawBoundUserInterface -# # - type: SiliconLawBound -# # - type: SiliconLawProvider -# # laws: Drone -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - Stun -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: -# types: -# Heat : 1 #per second, scales with temperature & other constants -# - type: Sprite -# drawdepth: Mobs -# layers: -# - state: chargeshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-charger.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - FlyingMobMask -# layer: -# - FlyingMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: chargeshell } -# On: { state: chargedrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# color: "#d7f705" -# radius: 7 -# energy: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# - CannotSuicide -# - type: StaticPrice -# price: 250 -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon -# - type: CombatMode -# - type: MeleeWeapon -# hidden: true -# damage: -# groups: -# Brute: 5 -# - type: EyeProtection -# protectionTime: 12 -# - type: TypingIndicator -# proto: robot -# - type: Speech -# speechSounds: Pai -# - type: ZombieImmune -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Human - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# OLD DRONE BASE - - -# - type: entity -# abstract: true -# id: ADTDroneAntagBase -# components: -# - type: MindContainer -# - type: InputMover -# - type: MobMover -# - type: Clickable -# - type: CombatMode -# - type: InteractionOutline -# - type: DoAfter -# - type: Pullable -# - type: Examiner -# - type: Puller -# - type: StandingState -# - type: Alerts -# - type: Rotatable -# - type: RotationVisuals -# - type: FloatingVisuals -# - type: Reactive -# groups: -# Acidic: [Touch] -# - type: Input -# context: "human" -# - type: DamageOnHighSpeedImpact -# damage: -# types: -# Blunt: 5 -# soundHit: -# collection: MetalThud -# - type: Damageable -# damageContainer: Inorganic -# - type: Bloodstream -# bloodReagent: Oil -# bloodlossDamage: -# types: -# Bloodloss: -# 1 -# bloodlossHealDamage: -# types: -# Bloodloss: -# -1 -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# # Circles, cuz rotation of rectangles looks very bad -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - MobMask -# layer: -# - MobLayer -# - type: MovementSpeedModifier -# baseWalkSpeed : 4 -# baseSprintSpeed : 3 -# - type: EyeProtection -# protectionTime: 12 -# - type: Sprite -# noRot: true -# drawdepth: Mobs -# - type: Physics -# bodyType: KinematicController -# - type: Hands -# showInHands: false -# - type: Body -# prototype: Drone -# - type: IntrinsicRadioReceiver -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Tag -# tags: -# - ShoesRequiredStepTriggerImmune -# - CannotSuicide -# - DoorBumpOpener -# - type: Access -# tags: -# - External -# - type: TypingIndicator -# proto: robot -# - type: Speech -# speechSounds: Pai -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon - - -# OLD FIRST DRONE - - -# - type: entity -# name: drone miner -# id: ADTDroneAntagMiner -# parent: ADTDroneAntagBase -# components: -# - type: NameIdentifier -# group: ADTDroneAntag -# - type: Inventory -# templateId: drone -# - type: InventorySlots -# - type: MovementSpeedModifier -# baseWalkSpeed : 5 -# baseSprintSpeed : 5 -# - type: MobState -# allowedStates: -# - Alive -# - Dead -# - type: ZombieImmune -# - type: MobThresholds -# thresholds: -# 0: Alive -# 125: Dead -# - type: NoSlip -# - type: StatusEffects -# allowed: -# - SlowedDown -# - type: SlowOnDamage -# speedModifierThresholds: -# 80: 0.5 -# - type: Temperature -# heatDamageThreshold: 5000 -# currentTemperature: 310.15 -# specificHeat: 42 -# heatDamage: -# types: -# Heat : 1 #per second, scales with temperature & other constants -# - type: Sprite -# drawdepth: Mobs -# netsync: true -# layers: -# - state: mineshell -# sprite: ADT/Mobs/Silicon/AntagDrones/drone-miner.rsi -# map: ["base"] -# - type: MovementIgnoreGravity -# - type: IntrinsicRadioTransmitter -# channels: -# - ADTDroneAntag -# - Common -# - type: ActiveRadio -# channels: -# - ADTDroneAntag -# - Common -# - type: Fixtures -# fixtures: -# fix1: -# shape: -# !type:PhysShapeCircle -# radius: 0.35 -# density: 50 -# mask: -# - FlyingMobMask -# layer: -# - FlyingMobLayer -# - type: Appearance -# - type: GenericVisualizer -# visuals: -# enum.DroneVisuals.Status: -# base: -# Off: { state: mineshell } -# On: { state: minedrone } -# # - type: ReplacementAccent -# # accent: silicon -# - type: Repairable -# fuelcost: 15 -# doAfterDelay: 5 -# - type: Actions -# - type: UnpoweredFlashlight -# - type: PointLight -# enabled: false -# radius: 3.5 -# softness: 1 -# mask: /Textures/Effects/LightMasks/cone.png -# autoRot: true -# - type: StaticPrice -# price: 250 -# # Frontier - languages mechanic -# - type: LanguageSpeaker -# speaks: -# - BorgTalk -# understands: -# - GalacticCommon -# - BorgTalk -# - SolCommon - - -# IPC DRONE - - -# - type: entity -# name: drone soldier -# id: ADTDroneIPCAntag -# parent: ADTDroneAntagBase -# components: -# - type: MobThresholds -# thresholds: -# 0: Alive -# 100: Critical -# 200: Dead - - -# DRONE NAME IDENTIFIER - - -# - type: nameIdentifierGroup -# id: ADTDroneAntag -# prefix: SD -# fullName: true -# minValue: 10000 -# maxValue: 99999 - - -# IPC DRONE NAME IDENTIFIER - - -# - type: nameIdentifierGroup -# id: ADTIPCAntag -# prefix: BF -# fullName: true -# minValue: 10000 -# maxValue: 99999 - - -# DRONE RADIO CHANNEL - - -# - type: radioChannel -# id: ADTDroneAntagChannel -# name: Дроны -# keycode: 'й' -# frequency: 1301 -# color: "#690e0e" - - -# DRONE ENCRYPTION KEY - - -# - type: entity -# parent: EncryptionKey -# id: ADTEncryptionKeyDroneAntag -# name: Ключ к каналу дронов -# description: Ключ к доступу каналов дронов. -# components: -# - type: EncryptionKey -# channels: -# - ADTDroneAntag -# - Common -# defaultChannel: ADTDroneAntag -# - type: Sprite -# layers: -# - state: crypt_silver -# - state: rd_label - - - - diff --git a/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml b/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml deleted file mode 100644 index 51d69e413cd..00000000000 --- a/Resources/Prototypes/ADT/Entities/Objects/Device/encryption_keys.yml +++ /dev/null @@ -1,31 +0,0 @@ - -- type: entity - parent: EncryptionKey - id: ADTEncryptionKeySpaceSec - name: space security encryption key - description: An encryption key used by space security. - components: - - type: EncryptionKey - channels: - - ADTSpaceSecChannel - defaultChannel: ADTSpaceSecChannel - - type: Sprite - layers: - - state: crypt_gray - - state: sec_label - -- type: entity - parent: EncryptionKey - id: ADTEncryptionKeyDroneAntag - name: drone encryption key - description: An encryption key used by drones. - components: - - type: EncryptionKey - channels: - - ADTDroneAntagChannel - - Common - defaultChannel: ADTDroneAntagChannel - - type: Sprite - layers: - - state: crypt_silver - - state: rd_label diff --git a/Resources/Prototypes/ADT/Entities/Objects/Devices/encryption_keys.yml b/Resources/Prototypes/ADT/Entities/Objects/Devices/encryption_keys.yml index 09ba604d7fc..7ec47caf47b 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Devices/encryption_keys.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Devices/encryption_keys.yml @@ -12,3 +12,34 @@ layers: - state: crypt_silver - state: nano_label + +- type: entity + parent: EncryptionKey + id: ADTEncryptionKeySpaceSec + name: space security encryption key + description: An encryption key used by space security. + components: + - type: EncryptionKey + channels: + - ADTSpaceSecChannel + defaultChannel: ADTSpaceSecChannel + - type: Sprite + layers: + - state: crypt_gray + - state: sec_label + +- type: entity + parent: EncryptionKey + id: ADTEncryptionKeyDroneAntag + name: drone encryption key + description: An encryption key used by drones. + components: + - type: EncryptionKey + channels: + - ADTDroneAntagChannel + - Common + defaultChannel: ADTDroneAntagChannel + - type: Sprite + layers: + - state: crypt_silver + - state: rd_label diff --git a/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml index b38591889d6..e104f38e2a1 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Misc/identification_cards.yml @@ -55,10 +55,10 @@ name: space sec cadet ID card components: - type: Sprite - sprite: ADT/Objects/Misc/space_sec_ids.rsi + sprite: ADT/Objects/Misc/id_cards.rsi layers: - state: default - - state: id-cadet + - state: id-spacesec-cadet - type: IdCard jobIcon: JobIconADTSpaceSecCadet jobTitle: Кадет SPACE SEC @@ -74,10 +74,10 @@ name: space sec officer ID card components: - type: Sprite - sprite: ADT/Objects/Misc/space_sec_ids.rsi + sprite: ADT/Objects/Misc/id_cards.rsi layers: - state: default - - state: id-officer + - state: id-spacesec-officer - type: IdCard jobIcon: JobIconADTSpaceSecOfficer jobTitle: Офицер SPACE SEC @@ -95,10 +95,10 @@ name: space sec pilot ID card components: - type: Sprite - sprite: ADT/Objects/Misc/space_sec_ids.rsi + sprite: ADT/Objects/Misc/id_cards.rsi layers: - state: default - - state: id-pilot + - state: id-spacesec-pilot - type: IdCard jobIcon: JobIconADTSpaceSecPilot jobTitle: Пилот SPACE SEC @@ -116,10 +116,10 @@ name: space sec commander ID card components: - type: Sprite - sprite: ADT/Objects/Misc/space_sec_ids.rsi + sprite: ADT/Objects/Misc/id_cards.rsi layers: - state: default - - state: id-commander + - state: id-spacesec-commander - type: IdCard jobIcon: JobIconADTSpaceSecCommander jobTitle: Командир SPACE SEC @@ -138,10 +138,10 @@ name: space sec service ID card components: - type: Sprite - sprite: ADT/Objects/Misc/space_sec_ids.rsi + sprite: ADT/Objects/Misc/id_cards.rsi layers: - state: default - - state: id-service + - state: id-spacesec-service - type: IdCard jobIcon: JobIconADTSpaceSecService jobTitle: Сотрудник SPACE SEC diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml b/Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_Core.yml similarity index 85% rename from Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml rename to Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_Core.yml index 7cbdcb764cb..a3d80b9319d 100644 --- a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_Core.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_Core.yml @@ -7,7 +7,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi + sprite: ADT/Objects/Specific/drone-core-basic.rsi state: drone-core-basic - type: StaticPrice price: 1250 @@ -25,7 +25,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi + sprite: ADT/Objects/Specific/drone-core-advanced.rsi state: drone-core-advanced - type: StaticPrice price: 2500 @@ -43,7 +43,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi + sprite: ADT/Objects/Specific/drone-core-elite.rsi state: drone-core-elite - type: StaticPrice price: 5000 @@ -62,7 +62,7 @@ description: Это ядро продвинутого дрона. Лучше вернуть это Space SEC. components: - type: Sprite - sprite: ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi + sprite: ADT/Objects/Specific/drone-core-command.rsi state: drone-core-command - type: StaticPrice price: 7500 diff --git a/Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_OreBags.yml b/Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_OreBags.yml new file mode 100644 index 00000000000..7f1a8f78919 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Objects/Specific/DroneAntag_OreBags.yml @@ -0,0 +1,28 @@ +- type: entity + name: ore bag + id: OreBagAntagDrone + parent: BaseStorageItem + suffix: Antag Drone + components: + - type: MagnetPickup + - type: Sprite + sprite: Objects/Specific/Mining/ore_bag.rsi + state: icon + - type: Clothing + sprite: ADT/Clothing/Back/ertleader_cyb.rsi # invisible sprite + quickEquip: false + slots: + - belt + - type: Item + size: Ginormous + - type: Storage + maxItemSize: Normal + grid: + - 0,0,9,3 + quickInsert: true + areaInsert: true + whitelist: + tags: + - ArtifactFragment + - Ore + - type: Dumpable diff --git a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml index 3593104e01f..1cce0a37d72 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/turrets.yml @@ -1,3 +1,12 @@ +- type: entity + parent: BaseWeaponTurret + id: ADTWeaponTurretDroneAntag + suffix: Drone Antag + components: + - type: NpcFactionMember + factions: + - DroneAntag + - type: entity parent: BaseWeaponTurret id: ADTWeaponTurretSpaceSec diff --git a/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml index 40a3e7c587c..d1772b7b705 100644 --- a/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml +++ b/Resources/Prototypes/ADT/Entities/Structures/Wallmount/Signs/posters.yml @@ -34,5 +34,5 @@ description: "This is the logo of the SPACE SEC Corporation" components: - type: Sprite - sprite: ADT/Structures/Wallmounts/space_sec_poster.rsi + sprite: ADT/Structures/Wallmounts/signs.rsi state: poster_spacesec diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml b/Resources/Prototypes/ADT/InventoryTemplates/DroneAntag_InventoryTemplate.yml similarity index 100% rename from Resources/Prototypes/ADT/Entities/Mobs/Silicons/Drones/Drone-Antags/DroneAntag_InventoryTemplate.yml rename to Resources/Prototypes/ADT/InventoryTemplates/DroneAntag_InventoryTemplate.yml diff --git a/Resources/Prototypes/ADT/StartingGear/DroneAntag_StartingGear.yml b/Resources/Prototypes/ADT/StartingGear/DroneAntag_StartingGear.yml new file mode 100644 index 00000000000..e567c269b86 --- /dev/null +++ b/Resources/Prototypes/ADT/StartingGear/DroneAntag_StartingGear.yml @@ -0,0 +1,33 @@ +- type: startingGear + id: ADTAntagDroneGearMiner + equipment: + back: ClothingBackpackAntagDroneMiner + belt: OreBagAntagDrone + # inhand: + # - MiningDrill + # - WeaponProtoKineticAccelerator + # - JawsOfLife + # - PowerDrill + # - OreBag + +- type: startingGear + id: ADTAntagDroneGearEngineer + equipment: + back: ClothingBackpackAntagDroneEngineer + belt: OreBagAntagDrone + # inhand: + # - WelderIndustrial + # - JawsOfLife + # - PowerDrill + # - Multitool + # - trayScanner + # - OreBag + +- type: startingGear + id: ADTAntagDroneGearCharger + equipment: + back: ClothingBackpackAntagDroneCharger + belt: OreBagAntagDrone + # inhand: + # - JawsOfLife + diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-cadet.png b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-cadet.png similarity index 100% rename from Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-cadet.png rename to Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-cadet.png diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-commander.png b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-commander.png similarity index 100% rename from Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-commander.png rename to Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-commander.png diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-officer.png b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-officer.png similarity index 100% rename from Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-officer.png rename to Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-officer.png diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-pilot.png b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-pilot.png similarity index 100% rename from Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-pilot.png rename to Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-pilot.png diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-service.png b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-service.png similarity index 100% rename from Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/id-service.png rename to Resources/Textures/ADT/Objects/Misc/id_cards.rsi/id-spacesec-service.png diff --git a/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/meta.json b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/meta.json index 5892ac1b15b..5fcb3098cfe 100644 --- a/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/meta.json +++ b/Resources/Textures/ADT/Objects/Misc/id_cards.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/d917f4c2a088419d5c3aec7656b7ff8cebd1822e idcluwne made by brainfood1183 (github) for ss14, pathologist made by JustKekc", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/d917f4c2a088419d5c3aec7656b7ff8cebd1822e idcluwne made by brainfood1183 (github) for ss14, pathologist made by JustKekc, SpaceSec made by the Adventure Time Project team", "size": { "x": 32, "y": 32 @@ -55,6 +55,21 @@ { "name": "blue-inhand-right", "directions": 4 + }, + { + "name": "id-spacesec-cadet" + }, + { + "name": "id-spacesec-officer" + }, + { + "name": "id-spacesec-pilot" + }, + { + "name": "id-spacesec-commander" + }, + { + "name": "id-spacesec-service" } ] } diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-left.png deleted file mode 100644 index f7848f63f6a3f7bd57aa4fd8430f34fe515f8f04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=6`n4RAr*7p-ZJDpV8Fw2z(}(} z$nbp5(;%OhA}nvcJB!#4{Q5pY)s7FSmf^wbRj-WCcYC$QCUJ&dy?s~7@%G(cSG*;j zu7CcfzRmY+uSBA7{(&z~+t=O)DF=cRw|?Eu`Tc2Sb<0cLQu7I$uH1Dvb?qtRgW2MO Wy`l3x=dP{=sq%F7b6Mw<&;$UHibqTU diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default-inhand-right.png deleted file mode 100644 index 82b5598806de72b5cd2ed0cb65cee99adbb58df8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=Rh}-6Ar*7p-rC69V8Fw2AmW3y++4=+d%hUb*TI&yrtXKQRQ{ YXFb^-I$!GNix(h8p00i_>zopr0QOu&O#lD@ diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/default.png deleted file mode 100644 index 95b3d54c270091387e888743faf2d53d147acbfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 355 zcmV-p0i6DcP)Px$9Z5t%R9J=Wm9cGvFcgOWL>VNqSimg{q+x_BXhf<0) z@xnDt({wkl>w0q!5d|60T0SielL0c$O?EDNy6^ZxpI6?(hi zW7yW8_nOPHWEW2;%~+usE1X*Ctp|OABRonViUA=60Khr-JzvJnSOEae?HRz!sahymb5?>HQjdrpfuUY^A002ovPDHLkV1hb- Bj{X1u diff --git a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/meta.json b/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/meta.json deleted file mode 100644 index 582e9e506f2..00000000000 --- a/Resources/Textures/ADT/Objects/Misc/space_sec_ids.rsi/meta.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "version": 1, - "license": "CC-BY-SA-3.0", - "copyright": "Made by the Adventure Time Project team", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "default" - }, - { - "name": "id-cadet" - }, - { - "name": "id-officer" - }, - { - "name": "id-pilot" - }, - { - "name": "id-commander" - }, - { - "name": "id-service" - }, - { - "name": "default-inhand-left", - "directions": 4 - }, - { - "name": "default-inhand-right", - "directions": 4 - } - ] -} \ No newline at end of file diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png b/Resources/Textures/ADT/Objects/Specific/drone-core-advanced.rsi/drone-core-advanced.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/drone-core-advanced.png rename to Resources/Textures/ADT/Objects/Specific/drone-core-advanced.rsi/drone-core-advanced.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/meta.json b/Resources/Textures/ADT/Objects/Specific/drone-core-advanced.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-advanced.rsi/meta.json rename to Resources/Textures/ADT/Objects/Specific/drone-core-advanced.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/drone-core-basic.png b/Resources/Textures/ADT/Objects/Specific/drone-core-basic.rsi/drone-core-basic.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/drone-core-basic.png rename to Resources/Textures/ADT/Objects/Specific/drone-core-basic.rsi/drone-core-basic.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/meta.json b/Resources/Textures/ADT/Objects/Specific/drone-core-basic.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-basic.rsi/meta.json rename to Resources/Textures/ADT/Objects/Specific/drone-core-basic.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/drone-core-command.png b/Resources/Textures/ADT/Objects/Specific/drone-core-command.rsi/drone-core-command.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/drone-core-command.png rename to Resources/Textures/ADT/Objects/Specific/drone-core-command.rsi/drone-core-command.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/meta.json b/Resources/Textures/ADT/Objects/Specific/drone-core-command.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-command.rsi/meta.json rename to Resources/Textures/ADT/Objects/Specific/drone-core-command.rsi/meta.json diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/drone-core-elite.png b/Resources/Textures/ADT/Objects/Specific/drone-core-elite.rsi/drone-core-elite.png similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/drone-core-elite.png rename to Resources/Textures/ADT/Objects/Specific/drone-core-elite.rsi/drone-core-elite.png diff --git a/Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/meta.json b/Resources/Textures/ADT/Objects/Specific/drone-core-elite.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Mobs/Silicon/Drones/AntagDrones/drone-core-elite.rsi/meta.json rename to Resources/Textures/ADT/Objects/Specific/drone-core-elite.rsi/meta.json diff --git a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json index 66600a3b782..2ba5855300a 100644 --- a/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json +++ b/Resources/Textures/ADT/Structures/Doors/Airlocks/Glass/space_sec_shuttle.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from CEV-Eris at commit https://github.com/discordia-space/CEV-Eris/commit/14517938186858388656a6aee14bf47af9e9649f - then modified by 20kdc & AJCM-git, glass by Peptide90, modified by brainfood1183 (github), modified by Lonkuk (github)", + "copyright": "Made by the Adventure Time Project team", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/meta.json b/Resources/Textures/ADT/Structures/Wallmounts/signs.rsi/meta.json similarity index 100% rename from Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/meta.json rename to Resources/Textures/ADT/Structures/Wallmounts/signs.rsi/meta.json diff --git a/Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/poster_spacesec.png b/Resources/Textures/ADT/Structures/Wallmounts/signs.rsi/poster_spacesec.png similarity index 100% rename from Resources/Textures/ADT/Structures/Wallmounts/space_sec_poster.rsi/poster_spacesec.png rename to Resources/Textures/ADT/Structures/Wallmounts/signs.rsi/poster_spacesec.png From 5b9b77756d3b9b59546a4ab51b9e60ba1737b440 Mon Sep 17 00:00:00 2001 From: Lonkuk Date: Wed, 14 Aug 2024 21:47:25 +0300 Subject: [PATCH 27/28] try fix tests --- .../ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl index fc3e203da53..8d21cd6ab4d 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Mobs/Player/humanoid.ftl @@ -55,15 +55,20 @@ ent-ADTRandomHumanoidSpawnerCBURNUnit = капитан РХБЗЗ ent-ADTSpaceSecCadet = кадет SPACE SEC ent-ADTRandomHumanoidSpawnerSpaceSecCadet = кадет SPACE SEC .suffix = Space Sec, Случайный + .desc = { "" } ent-ADTSpaceSecOfficer = офицер SPACE SEC ent-ADTRandomHumanoidSpawnerSpaceSecOfficer = офицер SPACE SEC .suffix = Space Sec, Случайный + .desc = { "" } ent-ADTSpaceSecPilot = пилот SPACE SEC ent-ADTRandomHumanoidSpawnerSpaceSecPilot = пилот SPACE SEC .suffix = Space Sec, Случайный + .desc = { "" } ent-ADTSpaceSecCommander = командир SPACE SEC ent-ADTRandomHumanoidSpawnerSpaceSecCommander = командир SPACE SEC .suffix = Space Sec, Случайный + .desc = { "" } ent-ADTSpaceSecService = сотрудник SPACE SEC ent-ADTRandomHumanoidSpawnerSpaceSecService = сотрудник SPACE SEC - .suffix = Space Sec, Случайный \ No newline at end of file + .suffix = Space Sec, Случайный + .desc = { "" } \ No newline at end of file From b604abf45ad6e98a1054aa5ff173ecec17589f9a Mon Sep 17 00:00:00 2001 From: Darki255 Date: Sat, 17 Aug 2024 20:04:50 +0300 Subject: [PATCH 28/28] =?UTF-8?q?=D0=BF=D0=BE=D0=BC=D0=BE=D0=B3=D0=B0?= =?UTF-8?q?=D0=B5=D0=BC=20=D0=BD=D0=B5=D0=B7=D0=B5=D1=80=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Entities/Clothing/Head/hardsuit-helmets.ftl | 8 ++++++++ .../Entities/Clothing/Head/hardsuits-helmets.ftl | 6 ------ .../Doors/Airlock/{airlock.ftl => airlocks.ftl} | 0 3 files changed, 8 insertions(+), 6 deletions(-) delete mode 100644 Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl rename Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/{airlock.ftl => airlocks.ftl} (100%) diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuit-helmets.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuit-helmets.ftl index e7d23ad01a5..c79ce8e7e3e 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuit-helmets.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuit-helmets.ftl @@ -1,2 +1,10 @@ ent-ADTClothingHeadHelmetHardsuitBlueshield = шлем скафандра офицера синего щита .desc = Плотный и устойчивый шлем Офицера Синего Щита на основе шлемов Отряда Быстрого Реагирования. Призван держать воздух внутри, пули снаружи. + +# Drone Space Sec +ent-ADTSpaceSecPilotHelm = шлем скафандра пилота SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecOfficerHelm = шлем скафандра офицера SPACE SEC + .desc = Для хранителей безопасности среди звезд. +ent-ADTSpaceSecCommanderHelm = шлем скафандра камандира SPACE SEC + .desc = Для командира хранителей безопасности среди звезд. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl deleted file mode 100644 index 114381e4bf3..00000000000 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Clothing/Head/hardsuits-helmets.ftl +++ /dev/null @@ -1,6 +0,0 @@ -ent-ADTSpaceSecPilotHelm = шлем скафандра пилота SPACE SEC - .desc = Для хранителей безопасности среди звезд. -ent-ADTSpaceSecOfficerHelm = шлем скафандра офицера SPACE SEC - .desc = Для хранителей безопасности среди звезд. -ent-ADTSpaceSecCommanderHelm = шлем скафандра камандира SPACE SEC - .desc = Для командира хранителей безопасности среди звезд. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlock.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlocks.ftl similarity index 100% rename from Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlock.ftl rename to Resources/Locale/ru-RU/ADT/prototypes/Entities/Structures/Doors/Airlock/airlocks.ftl