From cf2b1b4d0be6aac52db84860010e663742141131 Mon Sep 17 00:00:00 2001 From: DeltaFire Date: Sat, 1 Aug 2020 20:28:57 +0200 Subject: [PATCH] fixes, tweaks and brass claws Gives clockies a replica rabricator on roundstart, makes ratvarian spears able to parry (short parry cycle, short cooldown, timing is essence), adds brass claws to the code though they're not possible to acquire as of now. --- code/game/gamemodes/clock_cult/clock_cult.dm | 3 ++ .../clockcult/clock_items/clock_augments.dm | 30 ++++++++++++++++++ .../clock_items/clock_weapons/brass_claw.dm | 23 ++++++++++++++ .../clock_weapons/ratvarian_spear.dm | 14 ++++++++ .../mob/inhands/antag/clockwork_lefthand.dmi | Bin 2273 -> 2837 bytes .../mob/inhands/antag/clockwork_righthand.dmi | Bin 2790 -> 3264 bytes icons/obj/clockwork_objects.dmi | Bin 130473 -> 130941 bytes tgstation.dme | 2 ++ 8 files changed, 72 insertions(+) create mode 100644 code/modules/antagonists/clockcult/clock_items/clock_augments.dm create mode 100644 code/modules/antagonists/clockcult/clock_items/clock_weapons/brass_claw.dm diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 154d2df563..406e142a25 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -213,6 +213,9 @@ Credit where due: var/list/slots = list("In your left pocket" = SLOT_L_STORE, "In your right pocket" = SLOT_R_STORE, "In your backpack" = SLOT_IN_BACKPACK) if(ishuman(L)) var/mob/living/carbon/human/H = L + var/obj/item/clockwork/replica_fabricator/F = new + if(H.equip_to_slot_or_del(F, SLOT_IN_BACKPACK)) + to_chat(H, "You have been equipped with a replica fabricator, an advanced tool that can convert objects like doors, tables or even coats into clockwork equivalents.") slot = H.equip_in_one_of_slots(S, slots) if(slot == "In your backpack") slot = "In your [H.back.name]" diff --git a/code/modules/antagonists/clockcult/clock_items/clock_augments.dm b/code/modules/antagonists/clockcult/clock_items/clock_augments.dm new file mode 100644 index 0000000000..9957840c44 --- /dev/null +++ b/code/modules/antagonists/clockcult/clock_items/clock_augments.dm @@ -0,0 +1,30 @@ +//This file is for snowflakey clock augmentations and clock-themed cybernetic implants. + +//The base clockie arm implant, which only clock cultist can use unless it is emagged. THIS SHOULD NEVER ACTUALLY EXIST +/obj/item/organ/cyberimp/arm/clockwork + name = "clock-themed arm-mounted implant" + var/clockwork_desc = "According to Ratvar, this really shouldn't exist. Tell Him about this immediately." + +/obj/item/organ/cyberimp/arm/clockwork/ui_action_click() + if(is_servant_of_ratvar(owner) || (obj_flags & EMAGGED)) //If you somehow manage to steal a clockie's implant AND have an emag AND manage to get it implanted for yourself, good on ya! + return ..() + to_chat(owner, "The implant refuses to activate..") + +/obj/item/organ/cyberimp/arm/clockwork/examine(mob/user) + if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) + desc = clockwork_desc + . = ..() + desc = initial(desc) + +/obj/item/organ/cyberimp/arm/clockwork/emag_act() + if(obj_flags & EMAGGED) + return + obj_flags |= EMAGGED + to_chat(usr, "You swipe the emag on [src], hoping it'll achieve something..") + +//Brass claw implant. Holds the brass claw from brass_claw.dm and can extend / retract it at will. +/obj/item/organ/cyberimp/arm/clockwork/claw + name = "brass claw implant" + desc = "Yikes, the claw attached to this looks pretty darn sharp." + clockwork_desc = "This implant, when added to a servant's arm, allows them to extend and retract a claw at will. It will refuse to work for any non-servants." + contents = newlist(/obj/item/clockwork/brass_claw) diff --git a/code/modules/antagonists/clockcult/clock_items/clock_weapons/brass_claw.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/brass_claw.dm new file mode 100644 index 0000000000..e96ba62ac6 --- /dev/null +++ b/code/modules/antagonists/clockcult/clock_items/clock_weapons/brass_claw.dm @@ -0,0 +1,23 @@ +//Brass claw, a armbladelike weapon used by an clock implant. Stealthy if retracted, very obvious if active. Simillar to an armblade strength-wise but has some funky stuff + +/obj/item/clockwork/brass_claw + name = "brass claw" + desc = "A highly sharp claw made out of brass." + clockwork_desc = "A incredibly sharp claw made out of brass. It is quite effective at crippling enemies, though incredibly obvious aswell." + icon_state = "brass_claw" //TODO + item_state = "brass_claw" //TODO + lefthand_file = 'icons/mob/inhands/antag/clockwork_lefthand.dmi' //TODO + righthand_file = 'icons/mob/inhands/antag/clockwork_righthand.dmi' //TODO + //item_flags = NEEDS_PERMIT | ABSTRACT | DROPDEL + w_class = WEIGHT_CLASS_HUGE + force = 15 //Doesn't generate vitality like the spear does / has somewhat less damage, but quite good at wounding and gets through armor pretty well. + throwforce = 0 //haha yes lets be safe about this + throw_range = 0 + throw_speed = 0 + armour_penetration = 20 + hitsound = 'sound/weapons/bladeslice.ogg' //POSSIBLY TODO + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + sharpness = IS_SHARP + wound_bonus = 5 + bare_wound_bonus = 15 + total_mass = TOTAL_MASS_HAND_REPLACEMENT diff --git a/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm index 527745b81a..22b0913b2f 100644 --- a/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm +++ b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm @@ -12,6 +12,8 @@ attack_verb = list("stabbed", "poked", "slashed") hitsound = 'sound/weapons/bladeslice.ogg' w_class = WEIGHT_CLASS_BULKY + block_parry_data = /datum/block_parry_data/ratvarian_spear + item_flags = ITEM_CAN_PARRY var/bonus_burn = 5 /obj/item/clockwork/weapon/ratvarian_spear/ratvar_act() @@ -80,3 +82,15 @@ new /obj/effect/temp_visual/ratvar/spearbreak(T) action.weapon_reset(RATVARIAN_WEAPON_COOLDOWN) +//A very short, very effective parry that counts on you predicting when the enemy will attack. +/datum/block_parry_data/ratvarian_spear + parry_time_windup = 0 //Very good for predicting + parry_time_active = 3 //Very short + parry_time_spindown = 1 + parry_time_perfect = 2 + parry_efficiency_perfect = 110 //Very low leeway for counterattacks... + parry_efficiency_considered_successful = 0.8 + parry_efficiency_to_counterattack = 1 + parry_cooldown = 15 //But also very low cooldown.. + parry_failed_stagger_duration = 2 SECONDS //And relatively small penalties for failing. + parry_failed_clickcd_duration = 1 SECONDS diff --git a/icons/mob/inhands/antag/clockwork_lefthand.dmi b/icons/mob/inhands/antag/clockwork_lefthand.dmi index 88bd8ab7101eae62afa175e13db715c67e3652a4..ff8d6aafe48fc2d1d6ce718b37400e2f06216fe5 100644 GIT binary patch literal 2837 zcmaJ?cT|&E76(NX0UZcML4?7AG%>Iw2oelM3^;@yQHlZ*fdEQCYG9ZZ1(C3!3PK{v z2qZ!%1EEL}=~XfGl9g&gi2*`MDEr~rKjzGw-FMD=@7{Os`)>Qa`^8&ZnTsElJ1QU` zAda|hY76ZD24>?CVPI8=2^a#lzHs}SL8kYx9)aEug1iI#1q4E~6T89qrmJGHU&H65 zWd68sCNt{o7;k;Fs;NEmggf}I@|Z>Ql4@lxJTJ0;V^?!qH-G&Ax0ivT1H0XeR ztq-bB`jeMbt2sUX`^TN0eCK|gYG6`UDZf+KL$>QiGUsGstLmH2HA9IvhdS(A5uNQd zWmhsVZue9Q^AHmu0cTHs35`=ZXcSxG+}e!e&l2$hwU#} z>shIDQpM_<=cQ)77@6@-VX^)v>B@`#?OC#iBs9W~O5d1nDn_n*^KGR^uaS5q8mWg$ zEluJuno{d<(XfUC&7mqHtT_b_P8r9}6Eh>wyGGyPnbjMS^Vw`7 zmOYV!6aw=5xABknF+t@l{4?z>s}Oto)tZrS2JoqKUUqkxXIi6usl)!){bvjF-t z1i}c$rfly*XUoe&FMGmQzp{G>U_ud%^30@NkrPYPT#+kRoiLBxCda+wB9%|m!mXedZEmJB zbsT@>^xkA>$b~kyW(_X}=sRHTa#)GCAs=0C=G1No)^9alj_>wLSco<<7%s+dz*cFw zGWL??g^9SJl{+ayxk)FY%U|G-jR{auDpi4ssbL!C6o zM2lGZRxPogw{x8@Eo|D5N;oXgMWevxYZa9gS}OK+u#-!j!z#;8Yw&@n2~M8{;;FZD zMbvSc)_%ltrvO6;og-?$e-81)H3ggC@GA?hJu-dA?*@rOHRHI<0_1(9^#UlJg`kDi ztDItC>6;JUPsuKgakjs#$uE$Y19MY7&&KQt({+7Bw=|MI-@q)a2#KM;a^@en$*y%sUM#w6}b$I55D+967|8%?qm28*XF%L z$BpF=Jn~#?e}CCG=`RqZh#ol0)+IA8GSXv-gZ)YL0tf32x7AWt9H2SgyfG><;Kkkf2YqW6U+$F~woZ zBrYN&4RThJA+jCY;<(5qFE0!F;`*Q=(N0m@DG+rK=ddB6Q6;x%7z%3kL|OE_jGP=2 zqO-@z)rZ7JA7NQZ`LkLijdl{+ZDVKHr5CrwjJcE1TPe-=A_t!~fu`E7`hz|X3278v zvr8a?CJRI#$mMcpN>lG5enUM}a)adcSqLl=HLyiO*X!lQQb`Slgd30g>D zX5@`seY@1iT}DiN@EQ5i02K|K9lk<%VZhtl+i5+|qby%XExK>F4J(=MSX#}cN;45O z04y;=bwc10X^z{C6eol&^OJf48TInDeSB`qXF{0r;@`8n#tiz7 z5LEzo@J}ZG2U&2qR;zo3&lksV#$m0|29+s~&x%3D5XO@J9viVE>VUL&?0V{@v!tTo zuAF^ON<;k_X)Rd(oZnfC6Ulv!i^U^ZQt)hyd~9xF^8UgJ&QHw{o9qY-hZdzLx&pTQ?=zCVG&%@!mCcU9(HI3r>%$+FxVpnvOy4Nf U^R%UHV@JEKH)jcpP_l6?%CGBQZa z3_`XcOml4`WwMTCF!THN``zdM(evE%Jnws+bI$vm&pDs-KJS}iWog3CE5^&g!NG5O z-OvWmoj=xbZeX{W@#g_lPn4ZQsG(;FG#GX-6c!Z7!4XlE@j>O6F6EPnvpPD7TnhR^ z4$Y-fW1Q&IxazWV^40#e$CL_n9-hDTcV;FLuV^*T44`Gfum` zVW8#O8QY@1KF2uE=|gD`*Hi27=_@p?p`q5tF+1NcX+PGFFAkURjJX!?d$Yc#;mFj( zuHEFTXIL$WyD1; zuSf#GwYaz=uaf!)+BrCQCQJ>l*+mr5DG(p=PZFK$C1Nr>e!~$`CRWkc*RHCnKc-+_ z3Y0xz@#P*Dbj>z*Yj~+sC5yr1Dz`_pKaz0_3<_VtN5J^Y3q{@IY*3)q~SgQUl+9pa%4rQiOz*_GU*W2tb$-Ns;A)|l@>YcB=QAlZ)8hiqW6G#e0 zd5cr|>zWoVn%RQL{F!?XSqqP6HMPdR4bt4gZrdSrI9-(>-MPhF|TY1?krU~y$I ztVkP59v3Zdu;dVijt_PW23SSx=h(5-&Y`Of4SCy@c7lqKUa=6cb5L(E-Du&pY(ibD zW_At{QmD!F9>48*y$9$_+1O>a?qFrK9wQ+W7F<(a%#NN{T5M+ICntxo;Ch0n^;Hfo zD(b;%f8Gq@g(EemFg!K*jm=mqfnsJI_*vczyMhhB|6uiPOF!NNsI&!2K1--_qzWPr zcZFi8zJ=DIG*`oggipf`du+Ebb>xA#E5{DOweL{ed#W}Zpra6br{2$>9OfBNG0xh- z^*wIYVvYElC~EgUflFi#1LwLEMJg281mVv4$^nb!b~!$^_k93o<`qRk2_X%2w0XP! zXP3B_7HnYb2-hc~_5;jkn{N!pn=0orbu69Hgeqqiie`@VXjFGK3-u=-Iro__I=V3e!KwiK&3tq-h zOh$i9+sR`rYY$gOm8~HiFU2kYei;~Sg^V$b)WHCCp)*$W&YUc< zZ!-mIzXn#YrIK_Gr6F2>66zEbRlX7rI=s-TFJg0V_CLc?)K2{4KKj$${Ga)Pld*oP z#RWu7QeUJ-cxr#02VFOajTs%uN6dR#&y78t7S6A- zf!s z?L&G%e=o|w?J!t>$2zF1Dhp8x`Zk|~CCa6mCqCk8V_#W#Wa+0r zS7V{(0(ir*bb391m@OXWG<}J&H|)Xv3i0X5L!n*D*WAMdYV5{cWr@= zY&(E2b~IQdeS*2-Z$+7dU8zWK_6)Mo&C1?yXj<1-%t-W2=BS9YumfA76J*uo6n*8Y zUqJL*Nme`_EF(GC0xwDu!CgdF{s;Q5)FOS!$Z%nkAraZImH)wVwPUj;#9L6HKxC+Y zZxfH0K%F3FI1^!+)(tY-B3pZ?;isw0rI9W|gr#$OR4-HUqe*{uB%*1396b>`!J8u% z*Bi2&cIUh`v3~wl4~Z*7}Nn4bXlaxU2g9@{#6rrFbf$O}@i9nz-eem20Q_lvR~Gg;BB2vk@<_ z@S5C$-)Pd<4h)bPw!90xEcrBZvI{a~GQnARY$T?dLIzllj+2@+OAYA->x(gc@&H)rft15} zhnOa9Op818`AheWX|d=xud{tjh&?8LkSk!PX`s;Jk^`yj>^YC7Q|1PsfMyL-Ta~>4 z=mYq~sYZ8!e~0`LDZTajf=h*_?2K1*cGL0m-nE)B|4&bTUkd?36d?Vm@?Jm&-r3po zm0&@dpepQj_T25Jtj9^hEzEDh26ZV&zo DMcHi3 diff --git a/icons/mob/inhands/antag/clockwork_righthand.dmi b/icons/mob/inhands/antag/clockwork_righthand.dmi index 20190e4adda3d55ac834baf1e00c8e15cd67a1ff..efc69e72613ba81552127cfa2ca9b12fa95cf958 100644 GIT binary patch literal 3264 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 D{3$M7 literal 2790 zcmb`JX;jn48pi)Y1w>gyq^Ll&Qdz4YvM<31vWP5-fMEw&Wh;wdfCSNqktMc(l|rDD zod`h%BTE9J7#E0ugis(vOB2oe&qHof=L{cz8@x2GRwelurgo;mM4Gw&I+kC&^m z(mo{s0F>R`oX^TQ_*YSsm(^$I5*1_^hWiC(I7g>PrNyUa#HSh?&Ze=}y#p z8ynO%W2i>p!(YFh1a+wOwAN`FwkG0k&YE|29$dRh6kk6%G70mI`&OP=A1`$Ng z%1bO)Eu6sZ&?j*>_9nz_1!+Q~K3(VBYEOk4KUnRE@>T5Qtr%I~hUR0lbfR-lsZUm(_=HilO?HrbhMQ|<4Ag!*x$s?~6Ffdnqe@fhYJqRO z2YrG+b`2%x;h%H68;7}=K4uHgxqV94y{}4VSxBLMl|FfA9mvkL|5}@MSP$`Id<30z(W<}uH803YgzxP+>t(`qMUSwR>GsX4w(1G1h_o2Pf zKfmG7ctitEorn06B_V-#mU28oAhmucw-bdRrx1g6qjO9`Tj2uJqCERSm~X2T1xch_WB}_iFZ$%`M?rTQmzb%-ir7j2 zZV;Af#k@zxOGPiTm6w8QA8uMpRy*}4xddM0`MgrP9LW0aF~`kR<=79IBGve^*_QLj z!}U{_EOt!WZ5|D!)OGpMED@Gi$3U`7jQ%gNXW^ceJ7>qaSTu6aqJYtBcD=%q8!ym^ zYwu5Ab>Wc`1M$RljgHclU#3HsW%#gR{6^dJlJV)xdlgw-rP7(x-a4WX9)DE3y>Pt3 z;zC$C3uywFGYu<@tD*P1tUgk_KU4j?uVz8$JBQbKE6r6?vfk!Gzeh}z!JQ8;_IO3a z*f)Me-&o*a68u%qvE=gY((8Y`C&l)RH<9lx#OBN9!i?GBxS7=@(m5-k#J;lRV1PA> zH4sMaRc#_?t@Y~uw1`ZUzgtVeMH-f>YSKUl%I#F`e_xR`WoDW|urxUJxC3dF1;2@t zj+3D&UK_Z&tr{EPubW~mT-7k5*s44qp8g>6_!+gOqiCK976bPuc`J@KXUq z<;-tpfZo0>PJat98Ymno3TFy;&9IDsB@8$>7Xr;WQ^mZTfJf#M^Q7D(SLpZ}w(FN* zy?IRPMAON^_l|3ag-knIRBxp^1M`j~i9kRKSdR=S68>d&-e4jvGIjud^p~zRv0}T+ zvRJVLvSnJ#SswVyb>lJ{>}GrbN0`o!YIQ=9qGL%auT%m#)J&r<;Z{#l{bA=x9AH<5j zZBn%D)6wE)zl9#_saJM<3Fd9!g|_;@Tg+I3ZUV%HJyK$nBSMOkw)6}cn&kOg%`A?s zVA#U~&p7|u?zPfKvkGsSc9k7ubkLy(5JV?OtcbPY@IcdG$TS~uT_y9YB3jJ3MqCvu zGKd-664MQ`swD~hzAuxmiRC^*XhEwfAt74I;k7_ZZXeKW|Q7wh~#27KNC8}9Lo9!c=rwXl|0pen!| z6npi{Lbkl(ngSFbBX_IDhaqP}Ck|Zt{%0$W#KByrnmy0xF38+!IHKt zIO45_i!*A6(yr{zul!10=liy~sBx|F*1+meoLr@+^?V_<^+%}E(c;4Z@R$1L#M`^r zS8;t=Gz-#o*w)ees!ysI&WkUrMY>E`YVj$t-+AP!6;l*3#!J~^_W|=-NCsNgC+~;&GSjptTXa}XsnRiYnK1zjo%E9 z?Obx-Yoahj0W6%{Ux`p&OUNNQ9+{z$DXDs}mKwQT3(tYuaXSI@KMtL3;Ri`-A8+95 z-UsO1N0lS_zgt)O}L**TsVkn0H?sdSJ~YhLNo{E#Yra&4kady&!?>1XF=7Ldj;{wjcWV z4!gJJZGU}PK3du>g@`3Bv-RhsPM O3b?y?Id?$A3;qNNDN7ar diff --git a/icons/obj/clockwork_objects.dmi b/icons/obj/clockwork_objects.dmi index ae919d85a452e477027eacb404e61a2d47c2f959..156d4fa0c668c4711f4a9442822f9fe2a7acbc47 100644 GIT binary patch delta 11907 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