From 6d40c659203404ac9a53cb84e10cd8fa10d20d77 Mon Sep 17 00:00:00 2001 From: Gandalf Date: Sat, 7 Nov 2020 22:33:42 +0000 Subject: [PATCH] Energy gun rebalance [Semi-Modular] (#1346) * lguns * aaa * Update laser.dm --- .../projectiles/guns/energy/energy_gun.dm | 5 +++++ code/modules/projectiles/guns/energy/laser.dm | 8 ++++++- .../modules/gunsgalore/code/guns/energy.dm | 20 ++++++++++++++++++ .../sound/guns/fire/laser_cannon_charge.ogg | Bin 0 -> 9986 bytes tgstation.dme | 1 + 5 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 modular_skyrat/modules/gunsgalore/code/guns/energy.dm create mode 100644 modular_skyrat/modules/gunsgalore/sound/guns/fire/laser_cannon_charge.ogg diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/energy_gun.dm index e14a7c0b16e..d69ca891c0f 100644 --- a/code/modules/projectiles/guns/energy/energy_gun.dm +++ b/code/modules/projectiles/guns/energy/energy_gun.dm @@ -41,6 +41,7 @@ name = "prototype energy gun" desc = "NT-P:01 Prototype Energy Gun. Early stage development of a unique laser rifle that has multifaceted energy lens allowing the gun to alter the form of projectile it fires on command." icon_state = "protolaser" + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ammo_x_offset = 2 ammo_type = list(/obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/electrode/old) @@ -54,6 +55,7 @@ name = "\improper X-01 MultiPhase Energy Gun" desc = "This is an expensive, modern recreation of an antique laser gun. This gun has several unique firemodes, but lacks the ability to recharge over time." icon_state = "hoslaser" + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE w_class = WEIGHT_CLASS_NORMAL force = 10 ammo_type = list(/obj/item/ammo_casing/energy/disabler/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/ion/hos) @@ -67,6 +69,7 @@ inhand_icon_state = "dragnet" lefthand_file = 'icons/mob/inhands/weapons/guns_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/guns_righthand.dmi' + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ammo_type = list(/obj/item/ammo_casing/energy/net, /obj/item/ammo_casing/energy/trap) w_class = WEIGHT_CLASS_NORMAL can_flashlight = FALSE @@ -83,6 +86,7 @@ icon_state = "turretlaser" inhand_icon_state = "turretlaser" slot_flags = null + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE w_class = WEIGHT_CLASS_HUGE ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser) weapon_weight = WEAPON_HEAVY @@ -95,6 +99,7 @@ desc = "An energy gun with an experimental miniaturized nuclear reactor that automatically charges the internal power cell." icon_state = "nucgun" inhand_icon_state = "nucgun" + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE charge_delay = 10 pin = null can_charge = FALSE diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index a289db27773..7c546153219 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -12,6 +12,7 @@ /obj/item/gun/energy/laser/practice name = "practice laser gun" desc = "A modified version of the basic laser gun, this one fires less concentrated energy bolts designed for target practice." + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ammo_type = list(/obj/item/ammo_casing/energy/laser/practice) clumsy_check = FALSE item_flags = NONE @@ -20,6 +21,7 @@ name ="retro laser gun" icon_state = "retro" desc = "An older model of the basic lasergun, no longer used by Nanotrasen's private security or military forces. Nevertheless, it is still quite deadly and easy to maintain, making it a favorite amongst pirates and other outlaws." + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ammo_x_offset = 3 /obj/item/gun/energy/laser/retro/old @@ -27,6 +29,7 @@ icon_state = "retro" desc = "First generation lasergun, developed by Nanotrasen. Suffers from ammo issues but its unique ability to recharge its ammo without the need of a magazine helps compensate. You really hope someone has developed a better lasergun while you were in cryo." ammo_type = list(/obj/item/ammo_casing/energy/lasergun/old) + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ammo_x_offset = 3 /obj/item/gun/energy/laser/hellgun @@ -45,6 +48,7 @@ ammo_x_offset = 3 selfcharge = 1 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE /obj/item/gun/energy/laser/captain/scattershot name = "scatter shot laser rifle" @@ -66,6 +70,7 @@ name = "scatter laser gun" desc = "A laser gun equipped with a refraction kit that spreads bolts." ammo_type = list(/obj/item/ammo_casing/energy/laser/scatter, /obj/item/ammo_casing/energy/laser) + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE /obj/item/gun/energy/laser/scatter/shotty name = "energy shotgun" @@ -76,6 +81,7 @@ shaded_charge = 0 pin = /obj/item/firing_pin/implant/mindshield ammo_type = list(/obj/item/ammo_casing/energy/laser/scatter/disabler, /obj/item/ammo_casing/energy/electrode) + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ///Laser Cannon @@ -118,7 +124,7 @@ ammo_type = list(/obj/item/ammo_casing/energy/xray) pin = null ammo_x_offset = 3 - + cell_type = /obj/item/stock_parts/cell //SKYRAT EDIT ADDITION - GUNSGALORE ////////Laser Tag//////////////////// /obj/item/gun/energy/laser/bluetag diff --git a/modular_skyrat/modules/gunsgalore/code/guns/energy.dm b/modular_skyrat/modules/gunsgalore/code/guns/energy.dm new file mode 100644 index 00000000000..94111da9a35 --- /dev/null +++ b/modular_skyrat/modules/gunsgalore/code/guns/energy.dm @@ -0,0 +1,20 @@ +/obj/item/gun/energy/laser + name = "laser carbine" + desc = "An energy-based laser carbine that fires concentrated beams of light which pass through glass and thin metal." + cell_type = /obj/item/stock_parts/cell/upgraded //2500 now. + +/obj/item/gun/energy/e_gun + name = "energy carbine" + desc = "A basic hybrid energy carbine with two settings: disable and kill." + cell_type = /obj/item/stock_parts/cell/upgraded //2500 now. + +/obj/projectile/beam/laser/accelerator + damage = 30 + +/obj/item/gun/energy/lasercannon/afterattack(atom/target, mob/living/user, flag, params) + playsound(src, 'modular_skyrat/modules/gunsgalore/sound/guns/fire/laser_cannon_charge.ogg', fire_sound_volume) + to_chat(user, "You begin charging up a shot!") + if(!do_after(user, 6)) + to_chat(user, "You fail to fire the shot!") + return + . = ..() diff --git a/modular_skyrat/modules/gunsgalore/sound/guns/fire/laser_cannon_charge.ogg b/modular_skyrat/modules/gunsgalore/sound/guns/fire/laser_cannon_charge.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0b9abaa90e4b25ff15d6edc3abb9ba3a6aadb9b5 GIT binary patch literal 9986 zcmaiZ2Rxij*Y~x0i-;CIt6R}liL4MkSOm)wMDM-VgoqL?MD*xg2%-y#l8D~hY6%k2 z2~pz~eAjY6&vSpz_x;}Y`pu5H=FFTkbI$*q>&(!wvC#%_fWMz!lFLT^qNfUk1>)`E zZf@s+?Sd$j{XN77a?yAP(ZJ69_k*2@rQj3YeME8R{Qr7-a4#9%1nCd#Tx|t3+-;za zcILVl?4c@9VIjD%kg$*llt;tK+0ND7%EQXp6Ncpt!M~gelatql07PI9Tn*Y0G#rNp z015yw<$#eVSgXJa6LWd|QWKT2tq!5c)WpaRI*aG<&VN-7bB)qS4f=PtCp&@F*YXu4SCDvZ&$4ad8)DFv$^4E?c)!-Al78T6|MvpxP z5i1#gSHu_lfP!n0BcQjWkR!sfkAM}Wx`V7Pw*>`)z-u}dEXIvxS`L=Z~#lJN}$B?Y_Rxzl_G2V3cK`r+c))2ebsz@)npe#K%3%W zR|DkOr4{`@#achv>VGdXw%xpd45-U4H>NH(4n-74mpdQfg@(HU(55mdz7BU$B@fXq z4@s~nc`EcIstxR`UHz94ux1AU88}mi8&eOc4HW;FyO^Gb)TD>{B&Z6kM*ipL=>=ZE zjj(1~C))=RiNu**s3izwOP5O|Pj)E@91xNF1DZCRwl{zvPg}|w-M$kGZgTYi-3gykipU?2TT26-pF892^vG>x!i`T;ms ze>iRVbt5&{icC!Bu4~k}qKTsCF7yn(*f|scLMbj#{IBW) z%9kiEh>zm!<*Dfx?&HH&W$l9!8xj#e8BQieu`Qvpgyg$_|Bf7=xRIi6|tj z@Y16|qe3m?WC`dmoa9-mdoQdQ^ooBPZii#&8uQ3M%Fr(+ElN(Xj0p2S2i0O&NK7e1M2{v6(w5prLS_|m}t@*Fqnu9r+b zFF91JIn+n_26ja?_C!ah6tzUvwP}n-XuQT~t+a0$jfq)}p{*vot)}a(3>yOU>;HC` zOShSy^!kVAU|oa_5xb}ykM|$X$>E9pemj<3C7we+p35)UCNiz$Rn}Tb9?5@sj%`$N zYE*GV)JjAwPh_%PWLjxso?~ytM$`XV{_QzR?i^qNJx9@<;~$>W24|87y{Vc{eeZIQ zQX`;3Jr%G2(*OX_7DuLf5l6I8{1Yg#2^2qCN9up}7?3(4sy-$PDmDoK=mCHoG;%0K zlzW__%`GCXA}U_><{GV4Ovi7K<7AqbfZG ziFB$_nFW*%hdfDrtV<_^cvKxC)^z?=+40t-t-4Z@b=P`&UaCKM7;oS{94AYu;f zg%f0kP{0bAvzzs~$_?{YOY=&5t8Gdv%6hBczNv8B0I3zPORM=xOZnbZmz|XI zZPdRmZ7T1ru1v3Zvr)fI+RnGpnnP*-c-`mbvbE(MfVZ$ki%@J+lj>Dp;!J}GUBcmAT}Ua zY*6*e<{b!dSOoPgEiKC*);Q4?v;nmEqe3Dt>J>CQ-? zMB2ghGt%OML3s8x~ty8R%K^G9WsOA08pRZ8kWR)qz$sz`V}wV^W{!vxMKpfps0by90P z@pq=NcS1o{Jy_uvGL}*kK~}Fq;*rSmqqNGwtXRv(X416PGaR)wJq9O0M@ zl%p89Dv(t?(viQ@z)-Eui^72PVpZjJx(@c`ouF{eLONAsRUNH^Gklo=X;+RFUeZBp z7z+y5b`UGV*kcKXPEwdO4`exJ92El+ES#Dr(jIO9Yv<O`0|Xw zb422(Imjv=^&FgG=-614Y!4FBP|l|tb%4RZ zUGRf>$A#Mxs7H1{NUrD;0}7xQcS6CqLqK0h7cxv&Ky5+6R!9fhrI6YJ)GeI{xg0OO z#h@$?EL0Q83k#z_s&E#92`&i}n9n&5Cq7^T7jzj%Ov%j2;Lo6*I>NlyLe-GmB~L+( zmV1FvDD3DrurIHjk|8P&!w9Q#f>5w7|D0+7X0V&!f;KPW2qzFn2*}XogK`lz6z2Vi zRVGm|GBSmd^LA#0kjoL#fXe{CRs9ICqL2d#V7`|d0#=2IqgVn8xdsLMV1=GoLLv%G zp?O`wjHpt}(j)j~4j40W06%QZL?Q@t6Ys$~p^5P*P#n0W5_d9CcOAM|LZZPY6oiJO zm^TFot4;%XWO>H}hYHq0jCq;ZBnaZVhd-k>kAkmc$P>XjQo$Ujhz^^2fFD_G{_z|nfUlh(0kOh_tuj1f|C5;fr$zk# z*+dDLXI;|;zt){}j6|1N`8~>uR}06#ll0Wf*MH>f|HfkN?e z7A9ju$G8EKALLEQS%^W|gHj}j3Twx)qNZe(VTBljXnxS;kl?HNbFpVAa7f3Lc^SN5 z6b1SxokbbwKn4!r(jE9=br|#Kb)f#i2!Sz=7Q+~j0t?QrK#+2!+q0yCnolDO7q(^v zlWn;RZDS7xD9{!;ShTPzAVE}NF~S-On&Gl9H16Mh6cQ_!&;kLqayc$hQ|BAfa*nym=&w8i@~gy zbFsM~2vJ;Y6lP!L$nRxy6#e!ISJSo|2?UV=fZLS)1`N{;?Z^mCRt=4Fr!W_|hKfQc zRaq(1chF5F!V9UjQ4Xsa=Fhb>GA)qs_Oe7>B+tv>QTMVs?|$$^2_*uAC|E_F%0Q^; zxyu21qnLw2Y!WRG*AVF7wAP)S9hzRT0{Psm$4h755g3mwjI4{W9iiqg)sDgLV zzC0ky+`lAa56DX)*8NygFO@OZV@wuRg_`p+q7nkbEj8*dY$l_ zj}}nvct%wccbxqCj_giG}>R#08#5Ue8M(OWGdsv zas|&Anyt#2Z)S7Z`v-`Bu_vd>vUz9~Jznj_K;kqf3WNp$7GXF4VvDTCuf$}#6a>U< zE2%exI1rFMpPtBimDefs=wSZDF>Z7;Ic7=H`&2PHMKgz8%9(m52~n9~b+ zVIrmW2NF%(Wrk>YQAw4^rD->i-TbEvm%V-+cL&Ug~jMl!%5wJx;@ubH7jS52wfqau`^vvW8Zk)P>v&+?tC(7D- zvmWoeuG1&WkIYHg{S+AAA7dT&MH0MwPgNGZci**n^cAzQ{Qcz{>Ez&{52zqSlTuf9^BO=Wlcir6*Vn0eCV zS+~u28)fIZa7=e@z%I0tRBH*OVkoT;(#cv{?t2m(&b6*$+#Dyrjs$4&d*~nSYCQ&>JhCUN_3i_zK8$y33FJb)+?}p3{?$IR zq(3t$ta^6$k$>xuhLqUpuL%#Q(eGTN5p3t*UN^X`#c|F{<{P~?MvsforQR(sHVkm% zSZHbZO{*I0JJpFl`oy=Pb*QejX5hblLJxe5kAbCY``y!C~@KV)d_^MS~8&9XE`LMiI|)4N5)e7efhdWTD6>zrj> z{P;OmZRKz2`L6ca_%68i-N2o@ZCPy{wqsdqI$=aQr}c#PvL3;6>Kn;( zB?h%u@iSz_uO!G*K&hG#X6})DmF&9B96LTm)__Ku!#}JTNIn%3xp1YDdkHh zKOL1`x3Th$d7?Xa_ataNHIlqQDK=kWSl)9!TvOpk*3UI2zHax^A4(!lB3@dE`Lx<# zT!`?`8zef3L0_c&Z*ui>5i{xl;OFIhCB)3RfRb zV!+YxMYzZ}d8ZaH$p`B>-x9l}*0{0K|rs|KLKjlX6pEjroT$jCJMmy`MK@ ze`N7NQc28mCH0*)e)Y8f-s5hMm5wI?6zcv=u+fz}3S{9!hxL!EoX|O~Q@DI@f+ALa z9cO^oYP(y4V3q&?Er|UZyNV!B!klBgLq1j0=UE#2ROOyH3(+4Ry&1W+xMcbJBznH4 z==lx7)+x#Cvx%|^YsIEiqYb-iS`MmvCvoS7Ke=8(?Kif1#>HGb!bc^oRV!2i&WD5# z>g+nwC7*STj0naq->!DCbZtm?@7}dmdQf+@oi%*x=(DvO$=Dcq=Scax6ESwV+7#v3 zTli)#Zz!3d%~%-N6+biG{gT8(*%#4FBc*)eZ?^1jQi#|gQshxqeDhMc?#yI^Pbe?c zxYG~^n6hb2A!JD_Yo;YO<9ncREs5#pGYa1T9A2h3rL~7rfJUpDlznLB){J^Oe?9H2 ztjA&TqA3`7kKMzQVfj&)*U@!@x{AS5-__r}ekE>nMfxbzROv)Q3gY{=qz?F0 zXO0rtvTj4_^f+*aPg#wsMUL?SPS!w6Q`t(YZPfgxbJBN&YWCCAzF@pD22Rx^7aBKm zpv|N2Te;o-=!yR9=h$o|eh>01?Nv2ihqKBIaQ%tT9Ev_&pPs_x<%xc5{R((&UW=K^ zu{p8+NDUNbiWxRO-SAhrnc)A2mb9I4w9iNi%tFrA`QDS)2t8zw=A+aheP%%-_4UZst3M7uQI4PB z_HZ)BWqHl|Q5PRl>%zGG)=ORi&X3TWXAHA^u^t+=93C}fNe|g`uXzSG9!OU5Ll*;| zWUyK$H4Eb5*=}zKbY4@kVLIIiEKetgF5drAeT!(bU3${%(aLBcJNLXXC7ag`Ir)^4yr0e8dUljBWQfvO z+&P>xFrkXEGbxOJ6}wc2zLVs3wOuE0)dS|Kdvi-Ye7&6(yqQsvqcYa4WSrcS-Xw^m z$k{vkR=#j+9bzwjI;rQFUzeR`H?*8wZj#b9YcYLBACp77N?sc@w0sk)w|J5eD4A&nx~?2(iJv(wN4-eu?b;E-t=Nk)04(pVRE(v@iQt z1EGs)J?ilQZ#Xakw#5;q)<_YuP~Y+xf}K(y)=L5}~J}!&}jeyy+~R$q}O!t2#oT zzVmmF=_mE?ldh!gHtZiyZLP=TzW<~2*4RnlM*2=wa8~3Gb$FQ1$3O|E zf78oLL-&@#)4DNVHcN=7F8XuR&0g}gn0 ztqOeiBtcw_^x|B1pY3Lg$AN3frFu*~U$N3qsS3aOc7$8Hx@b$~)ATffqAjy`V}fqh zB=1Mg0>on;?E^^z1!>H8{{$EwOUe5gHX)DSdM*IpQ8(iItMTRiF!0(>Y z1K+}3o@~32bxkvNT29|VPkj>@Fcbf*-?-4(Q8u5g-`@< zy)#=gXtH_3b!_YnLJ zp%gtEeelFM*VtjqgCo83S2uxmzScKF@V}cg&z2mM5xKbdKq}s_OcrOWUv9whsC6&@ z2K^dqTkCc3bo}k(#Ias)X|0IkJB8QRO*_=-qa7}N3N7tTRN1}z3em0U-S(+ z{kVZv7f-?oG-O^;^Hp-~xHm!XCvVbk!mt`-HzkND$SmUqVzaG{{8vf)eAahAras#7 zaxZJ(e7~xh~7Cqt;bJ~8YD<&o-4C5o!-S~ zbnkljhQ%gq5_ifooX#yK|Do2E_jziQ2QBmB6>TjHJRVE;S<1iw*c?Kwbd^L%@2Hm$FVsR7)*co90}(;1s9Q`!y{XITG5%3GSD&z_ir z#T%4Kbl~?Bdqr_^L4kMG5xXq_z+O<`f`4~v^W`W8I@`N@&##GyiHM29?;s?Mdy__z zcF+3bPccfW$13@)Z;zA&Z7IloYc0am9}sV810wqT+%?|bW)JBnW;zp|>dZC{a5rT? z_F21iFXe>i8i7CTxb!YE5$bo=@|Nj3(v~s1TqHP`)0+$)*FfOi@rPqz_by{YV>*%u zgE7+fnSQ93lz0}KK!(}QRO?E;V)b=yP63E8lDb=0KY5kJ=(T?zgh2&N|4L_~?-c}| zHVtl0kS;sJ0CnlDMd6kROe;@{*0J6bP2W?5#MAiPj;gLULPK71AV>oUe6$tDsVnju zZDQ@nvCF@p1qnx5+~)0JZW;VNKy&Up?qp{Q~>?`$ao7?)9;7{#M zm;T$RT~njYwm2VOlZhlm=IUb~MJNFssj&1T_cn6{*3$jI)F}6(T^Y4my)%p&yVj&! z^LO~3zgL_MW$WxwvrvEZIOE}K7yP$1d3nYI=f1E<F;wQ$VfUJzl)Z?ijS=ISkzc(l6ul#|qo&nd z55e)_>@?+mVXZh23)cC*V;I9)iZz2&`cwgrJAU-5_!=`J!)YZ$$IZHKFV zTECe>KK_|VPdwvsg-ePWg^_l90o*Q;wEVe}%P)<$od}$HpXvNxre;>S3rZk>1{$3=OT}4a;zqxKm)iQkA4wl z^n(X7I1$u~yvqFLK1287T%=jJE5qoMP>%6|paL@tIJr7%D}q&ovTB=fb&-uc-?vy zdY~{=<=?nzx!PBwyTPeR;XNCsR&=H8*4sQ^!Yxri=!v~n5p8?_gGI+XR)G>heEdO+ zvH?EZ^Xbk6p!3s48<9lTc<)Rr*1W1zuR7ZEbY~WW#qQ3~MmQ zv3wuPet`#FB@FVt;nhq81cinCN!elM>d`t7qIHhpw#$yaF1{pSbo$A0dQYBKMYEP& z!mso8w8w zjH@e>qV=}MhJsIC)EK*~x4#bl5p*V?yT`I7FXTj~zuEKn#+@o&VqVXiO@f<Qg~4 zaqTR|8nuz>zjC(^oi)V`2a-%PpXL}%Qmgfos>7ZG!-LLS(oFfB<<7eu5~3Kl`^w3d zdce%;5!vQ9eY9m(o$kB-u3!|5?Y9`DfFa?kKP(mP7Ac=f4;Dzij1_l1rR&kkZ+Y*bfZNpo6TsU2w z8REluNw2N~gXexn5Bu^)eIaElPWz&Ojxhc;$C&xGw44Eon``Y8R zG8gSyXsn^ww~(NjyMWAU*EmMtkzP&lOC4mDaiw41ug1K+?Qxkpye89>`=8;3G&cz# znqtb!>QcMtelVQG5#KR1O0hsgAsO!P+Xg(|o)1^RsdEg`)__6VII4{029!)a-m2Hb#fGAh?j_ZhNDs|UmyI{|+t&r6h s$qYsKJQ-O7