From aa9906252c47fb20fe1ad101f1a051e03b43f4a0 Mon Sep 17 00:00:00 2001 From: Tenteratus <143085120+Tenteratus@users.noreply.github.com> Date: Thu, 24 Aug 2023 19:30:16 +0300 Subject: [PATCH 1/2] add Emitter gun --- .../Circuitboards/Machine/production.yml | 4 ++ .../Weapons/Guns/Battery/battery_guns.yml | 26 ++++++++++++ .../Weapons/Guns/Projectiles/projectiles.yml | 12 ++++++ .../Graphs/improvised/emitter_gun.yml | 39 ++++++++++++++++++ .../Recipes/Crafting/improvised.yml | 13 ++++++ Resources/Prototypes/tags.yml | 3 ++ .../Battery/emitter_gun.rsi/emittercannon.png | Bin 0 -> 1194 bytes .../emitter_gun.rsi/emittercannon_charge.png | Bin 0 -> 151 bytes .../emitter_gun.rsi/emittercannon_empty.png | Bin 0 -> 206 bytes .../Battery/emitter_gun.rsi/inhand-left.png | Bin 0 -> 674 bytes .../Battery/emitter_gun.rsi/inhand-right.png | Bin 0 -> 641 bytes .../Guns/Battery/emitter_gun.rsi/meta.json | 34 +++++++++++++++ 12 files changed, 131 insertions(+) create mode 100644 Resources/Prototypes/Recipes/Crafting/Graphs/improvised/emitter_gun.yml create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_charge.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_empty.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/meta.json diff --git a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml index a4ddbc8b6607b2..8a639383c05c8b 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml @@ -808,6 +808,10 @@ materialRequirements: CableHV: 5 Glass: 2 + - type: Tag + tags: + - DroneUsable + - EmitterCircuitBoard - type: entity id: SurveillanceCameraRouterCircuitboard diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml index a043794d1eb025..ede2654e083d51 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml @@ -584,3 +584,29 @@ proto: BulletCutterAdv fireCost: 100 - type: Appearance + +- type: entity + name: Emitter Gun + id: WeaponEmitterGun + parent: BaseWeaponBattery + components: + - type: Sprite + sprite: Objects/Weapons/Guns/Battery/emitter_gun.rsi + state: emittercannon + - type: Item + size: 30 + - type: AmmoCounter + - type: Gun + fireRate: 0.5 + soundGunshot: + path: /Audio/Weapons/Guns/emitter.ogg + zeroVisible: false + - type: Appearance + - type: StaticPrice + price: 500 + - type: ProjectileBatteryAmmoProvider + proto: EmitterBoltGun + fireCost: 200 + - type: Construction + graph: EmitterGun + node: emittergunnode \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index 247d986def942e..56a89dfe0b7a0c 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -807,3 +807,15 @@ lifetime: 0.4 - type: StaminaDamageOnCollide damage: 65 + +- type: entity + name: emitter bolt + id: EmitterBoltGun + parent: EmitterBolt + noSpawn: true + components: + - type: Projectile +# soundHit: Waiting on serv3 + damage: + types: + Heat: 30 diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/emitter_gun.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/emitter_gun.yml new file mode 100644 index 00000000000000..d47cc6a95707e2 --- /dev/null +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/emitter_gun.yml @@ -0,0 +1,39 @@ +#In its own file and not improvised-shotgun.yml in case anyone ever wants to add more guns that use it. +- type: constructionGraph + id: EmitterGun + start: start + graph: + - node: start + edges: + - to: emittergunnode + steps: + - tag: Pipe + icon: + sprite: Structures/Piping/Atmospherics/pipe.rsi + state: pipeStraight + name: pipe + - tag: CapacitorStockPart + icon: + sprite: Objects/Misc/stock_parts.rsi + state: capacitor + name: capacitor + - tag: PowerCellSmall + icon: + sprite: Objects/Power/power_cells.rsi + state: small + name: power cell small + - tag: PowerCellSmall + icon: + sprite: Objects/Power/power_cells.rsi + state: small + name: power cell small + - tag: EmitterCircuitBoard + icon: + sprite: Objects/Misc/module.rsi + state: engineering + name: emitter circuit board + - material: Plasteel + amount: 10 + doAfter: 10 + - node: emittergunnode + entity: WeaponEmitterGun \ No newline at end of file diff --git a/Resources/Prototypes/Recipes/Crafting/improvised.yml b/Resources/Prototypes/Recipes/Crafting/improvised.yml index 2f3b34db2b0be7..b32dafb5c82f38 100644 --- a/Resources/Prototypes/Recipes/Crafting/improvised.yml +++ b/Resources/Prototypes/Recipes/Crafting/improvised.yml @@ -162,3 +162,16 @@ icon: sprite: Objects/Misc/rifle_stock.rsi state: icon + +- type: construction + name: emitter gun + id: emittergun + graph: EmitterGun + startNode: start + targetNode: emittergunnode + category: construction-category-weapons + objectType: Item + description: A gun that used to be a simple emitter. + icon: + sprite: Objects/Weapons/Guns/Battery/emitter_gun.rsi + state: emittercannon diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 7fe2b1bd2d7882..3ef122d71e8b38 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -1053,3 +1053,6 @@ - type: Tag id: ModularReceiver +- type: Tag + id: EmitterCircuitBoard + diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon.png b/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon.png new file mode 100644 index 0000000000000000000000000000000000000000..5ce417fb974fd5a1902f663eb57fecedcaaf104e GIT binary patch literal 1194 zcmV;b1XcTqP)ThkZaP#Y)G7n9b$ znJaXZ_02k(!TJ|m*S;z)6qJ^+N$1qkK{s*Ts>0l084f4(jhGfOt7WB{kf63h!J=hO z*NC&v?k@9c)E2YGT;T2_@$R|ja^HKtclkXJ$Vd7fm+{3T;M?NCkWj69ot@gjZEeYYdg5* zGwgr&9ac}VHjx=04qptx^Qi~eXT`(GNnj&*IWaN8%1|f-ZJlZ9Vn4UO*BkEtr)Ty0 zbk2rgFc>kBzCZx;_Z|HBVD8)W1BQ)BN!Y*XJllq|v%n8m+h8;rk$?I$@Fh^z)`~LH z-&|)whx=z>J+OObJui)qCrP;tu!YCXy>b+|0tADXW1`>sVk;1cUZ2JQEH;6z!0xO2 zkY2JGckPY1;Qk&BrDeE&>o+zL5>4P5^7H<#u~G6r1ApUdIGs*>_eDMau~;H5$}l}0 zZhP<`qP@MnU86B*ss4e$hj@5n2xHEUHP>IZ18$FuV0+1%Yyy;1FK@!dp6jIcBt|uq zzJU?a&-j8FA3NWN%jH5&P7Z!-YJ!)Hmqb=;etw>nZ;=4>%fJAO!gTdgQc~C${r&xH zz?Jl0A=-2S#^RvQcK{7SJQCX*d89O%Ot`S)Nff2q&aq(wtNVODChn`R$KKjn)|Q=} z&2K|9Gc%~YcI}zBy%qJH(8uDWPj`T}Se(`i3JNehJd8;aK+@9EFg`v`k2QzGp_B9Y zhC|q=tzi5ex{*nKu|I{Zz>i$X(C%wJBhzIe~=LS&sGcq#ZA@|YL z)YKKl*Ah|s5j$XXbd&`V>b?j>=tn#W(p7lc)>~^t=|}7U5f?66Uwt0{$x#MCa+Cp( z9Ay9`M;QRgQ3gPAlmU<&WdI~c84&FoMCS*@8sYf?H8nLt4H2IoPy?X|%MV!SFB)O_ z0XTN_ze;3&K)ey29{|A!&kqod@caPL7-ISRJPmB-Q_=lCFPhlp2OI&yDGJf&2Z$tL z^8?~V!sG{tBBAmFM36A~0isB#`~VTC?*kw?$^b}?G60hEFEvNktUF=7y8r+H07*qo IM6N<$f|2MymjD0& literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_charge.png b/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_charge.png new file mode 100644 index 0000000000000000000000000000000000000000..ee9797af8d828afef892edaa8a5e68139005fe38 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCp_w z;uumf=k588ybKCF%m)=V3Z9v=&`8*tQCX#R>a*D0JLX@r0jdK62c{2?&C7bs8rFKm mt2W%9w`w}07BfVOVGFaIRw(PM>#|psK_Z^6elF{r5}E+T)hNLL literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_empty.png b/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/emittercannon_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..002888c330945a0b809e11785d5ede95cc49ec76 GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DA?fX z;uumfCpl3f!QfRxAbXEh!WG8Fd=jM$S7jaqiGGxKd7l}5a7ECYAOHQ{*Ud5UmH80# zNWA$6x7nnxfoB<~f4*iI*S0Bf-w{{g5{9AzqYDxbco+jFTw+crWw5R3yUzH8A%Khh q;*Cc$_4pL7Catn=h(Wf8fuS$h;QL{vSHeKIFnGH9xvXsnC>s)gaF4w5_4tVeiT0^8C48 zTQx5noS-Pca!sl0#QX=U^-c$6ZCFfNQ+B<$!X*Z^f)aho|lvJ2(&Ig~ntyraD zUl{x6=yUCgT>r1XYaa`Fu>9E9KXKXC%@3(GjSCG_}zWgQTWL#6#p{rS@x^_EyC+M_<94byZ`nr0}X}+knVp6?r zi)N{JHoWoNYk5B`zOZZe$*`aa^Svti*8Dj9b@7rPYWw#7@BBU4UgdPW^DXuloyYyw z*u68|Sa{cS`W9AiR>u$bo7U7vKYKqpU#Tzo(j(I+y%+xMt6f#m`%ibb+Rp^hHCu#h zR{c=AKEov{5l?u*q!a}mD(B_@`tQNA<#z7htwNlspP5yd&Yj!0AdY|fIkqPUL+TFf zV5rsN;n|R5rogZEnfVy&i_Hh_UfZ{6?XShjg~7m(x&HWe*z%CNh7@j@nqLhj(gm?P z(i7UR@|^pkN@%>kpE4K_N@*xL>#t_*d(#x8P}?Mb4c{er{7sfxKRT`A0;945*~ mM5<@Jx^usz&H>@ zr;B4q#hkaZ480FKNVMH==;CuaxUf5*plG6AQ{JPXh2G5n8v5q?gvVNyT)dhiYrRt< zW17}aRzAIdElvm10+^aQPS4byvt;Y7C%4=lf43FL^SE{AcZ?9g z3>}A=9Av~89&KO{XlHG(&`G$(dNnI_%k5ldN#%EY>O~a(Kgs$nwl>WBO4e3;{e>4Z zI?^_0p7=S>#yrV$hQ@-+FFEdizxcLnW3g?+=E4@83$MSn3CSEkcB{%xBVi z`1sMTb&Bqib{tJUZT+9>o=G=~cI>^YyT)$Hf=?#{V?S#uR2kWPi0`P|eeAHeTU_JE z$^Uyje^zMozypc_XBggMs#~0&Ao%@?(1a!b?DWO1uAbo0uxgju%Khh0Evgn3;tWVt zJO7#I^r~))uiqm*7Kb~&7WD|KzplDAj`eMS!ku5c^)kO|WpF~pT4#P^EPVCeYRS#j z2A|zBqW;FVn^cQF+a)|Fz1}fuFV`MXHfTJ~;rC{)4!KsUcp8|d7(8A5T-G@yGywpk C2pDw$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/meta.json new file mode 100644 index 00000000000000..57a4ea7bed26e8 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Guns/Battery/emitter_gun.rsi/meta.json @@ -0,0 +1,34 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "emittercannon", + "delays": [ + [ + 0.2, + 0.2, + 0.2 + ] + ] + }, + { + "name": "emittercannon_charge" + }, + { + "name": "emittercannon_empty" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} \ No newline at end of file From b3ddaabf14518e2446123301b5ead9ed0acb37e7 Mon Sep 17 00:00:00 2001 From: Tenteratus <143085120+Tenteratus@users.noreply.github.com> Date: Thu, 24 Aug 2023 19:56:16 +0300 Subject: [PATCH 2/2] locale files --- .../entities/objects/weapons/guns/battery/battery_guns.ftl | 3 +++ .../entities/objects/weapons/guns/battery/battery_guns.ftl | 3 +++ 2 files changed, 6 insertions(+) diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl index 60cf1ecae0d44d..c3b5819ee1bf2c 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl @@ -55,3 +55,6 @@ ent-WeaponPistolCHIMPUpgraded = experimental C.H.I.M.P. handcannon ent-WeaponBehonkerLaser = Eye of a behonker .desc = The eye of a behonker, it fires a laser when squeezed. .suffix = { "" } +ent-WeaponEmitterGun = emitter gun + .desc = A homemade emitter cannon, powerful, but the charging is poor. + .suffix = { "" } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl index e11ce50e5581d9..6bd96386c19065 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl @@ -64,3 +64,6 @@ ent-WeaponCutter = ионный резак ent-WeaponCutterAdv = улучшенный ионный резак .desc = Инструмент шахтеров, предназначенный для расчистки горных пород. Обладает усовершенствованной батареей и усиленной концентрирующей линзой. .suffix = { "" } +ent-WeaponEmitterGun = эмиттерная пушка + .desc = Самодельная эммитерная пушка, мощная, но скорость зарядки оставляет желать лучшего. + .suffix = { "" }