From c2f36c8fe445939ecaba4f7e4cd626d31f9dce4d Mon Sep 17 00:00:00 2001 From: lolman360 Date: Sun, 16 Aug 2020 17:03:57 +1000 Subject: [PATCH] sprites --- code/modules/smithing/anvil.dm | 4 +- code/modules/smithing/finished_items.dm | 66 ++++++++++++++++++------ code/modules/smithing/smithed_items.dm | 35 ++++++++++++- icons/obj/smith.dmi | Bin 484 -> 3210 bytes 4 files changed, 86 insertions(+), 19 deletions(-) diff --git a/code/modules/smithing/anvil.dm b/code/modules/smithing/anvil.dm index 5ac705ee09..3326049ff2 100644 --- a/code/modules/smithing/anvil.dm +++ b/code/modules/smithing/anvil.dm @@ -15,6 +15,7 @@ #define RECIPE_COGHEAD "bsf" //bend shrink fold. #define RECIPE_BROADSWORD "dfufd" //draw fold upset fold draw #define RECIPE_HALBERD "duffp" //draw upset fold fold punch +#define RECIPE_GLAIVE "usfp" //upset shrink fold punch #define STEPS_CAP 8 /obj/structure/anvil @@ -43,7 +44,8 @@ RECIPE_SHORTSWORD = /obj/item/smithing/shortswordblade, RECIPE_SMALLKNIFE = /obj/item/smithing/knifeblade, RECIPE_BROADSWORD = /obj/item/smithing/broadblade, - RECIPE_HALBERD = /obj/item/smithing/halberdhead) + RECIPE_HALBERD = /obj/item/smithing/halberdhead, + RECIPE_GLAIVE = /obj/item/smithing/glaivehead) /obj/structure/anvil/Initialize() ..() diff --git a/code/modules/smithing/finished_items.dm b/code/modules/smithing/finished_items.dm index d0d115fca8..aaadce5106 100644 --- a/code/modules/smithing/finished_items.dm +++ b/code/modules/smithing/finished_items.dm @@ -27,12 +27,11 @@ wielded_mult = 1.75 -/obj/item/melee/smith/twohand/Initialize() - ..() +/obj/item/melee/smith/twohand/ComponentInitialize() + . = ..() AddComponent(/datum/component/butchering, 100, 70) //decent in a pinch, but pretty bad. - AddComponent(/datum/component/jousting) AddElement(/datum/element/sword_point) - AddComponent(/datum/component/two_handed, force_unwielded=force, force_wielded=wield_force, icon_wielded="[icon_state]_wield") + /////////////////////////// @@ -41,23 +40,47 @@ /obj/item/mining_scanner/prospector name = "prospector's pickaxe" desc = "A pickaxe that can sound rocks to find mineral deposits and stop gibtonite detonations." - icon = 'icons/obj/mining.dmi' + icon = 'icons/obj/smith.dmi' icon_state = "pickaxe" //todo:sprite +/obj/item/mining_scanner/prospector/Initialize() + ..() + desc = "A handmade [name]." + overlay = mutable_appearance(icon, "minihandle") + overlay.appearance_flags = RESET_COLOR + add_overlay(overlay) + if(force < 0) + force = 0 + /obj/item/pickaxe/smithed name = "pickaxe" desc = "A pickaxe." - icon = 'icons/obj/mining.dmi' + icon = 'icons/obj/smith.dmi' icon_state = "pickaxe" +/obj/item/pickaxe/smithed/Initialize() + ..() + desc = "A handmade [name]." + overlay = mutable_appearance(icon, "stick") + overlay.appearance_flags = RESET_COLOR + add_overlay(overlay) + if(force < 0) + force = 0 + /obj/item/shovel/smithed name = "shovel" desc = "A shovel." - icon = 'icons/obj/mining.dmi' + icon = 'icons/obj/smith.dmi' icon_state = "shovel" - - +/obj/item/shovel/smithed/Initialize() + ..() + desc = "A handmade [name]." + overlay = mutable_appearance(icon, "shovelhandle") + overlay.appearance_flags = RESET_COLOR + add_overlay(overlay) + if(force < 0) + force = 0 /////////////////////////// @@ -67,21 +90,32 @@ /obj/item/melee/smith/twohand/halberd name = "halberd" + icon_state = "halberd" + overlay_state = "spearhandle" -/obj/item/melee/smith/twohand/halberd/Initialize() - ..() - throwforce = force/3 - +/obj/item/melee/smith/twohand/halberd/ComponentInitialize() + . = ..() + AddComponent(/datum/component/jousting) /obj/item/melee/smith/twohand/javelin name = "javelin" + icon_state = "javelin" + overlay_state = "longhandle" wielded_mult = 1.5 -/obj/item/melee/smith/twohand/javelin/Initialize() - ..() - throwforce = force*2 +/obj/item/melee/smith/twohand/javelin/ComponentInitialize() + . = ..() + AddComponent(/datum/component/jousting) +/obj/item/melee/smith/twohand/glaive + name = "glaive" + icon_state = "glaive" + overlay_state = "longhandle" + +/obj/item/melee/smith/twohand/glaive/ComponentInitialize() + . = ..() + AddComponent(/datum/component/jousting) ////////////////////////// // Other Melee // /////////////////////////// diff --git a/code/modules/smithing/smithed_items.dm b/code/modules/smithing/smithed_items.dm index a4b12002d8..9fedb6124d 100644 --- a/code/modules/smithing/smithed_items.dm +++ b/code/modules/smithing/smithed_items.dm @@ -14,7 +14,7 @@ /obj/item/ingot name = "ingot" icon = 'icons/obj/smith.dmi' - icon_state = "unfinished" + icon_state = "ingot" material_flags = MATERIAL_COLOR | MATERIAL_ADD_PREFIX var/workability = "shapeable" @@ -69,6 +69,7 @@ name = "smithed axe head" finalitem = /obj/item/melee/smith/axe + /obj/item/smithing/axehead/startfinish() finalitem = new /obj/item/melee/smith/axe(src) finalitem.force += quality @@ -77,6 +78,7 @@ /obj/item/smithing/hammerhead name = "smithed hammer head" finalitem = /obj/item/melee/smith/hammer + icon_state = "hammer" /obj/item/smithing/hammerhead/startfinish() var/obj/item/melee/smith/hammer/finalforreal = new /obj/item/melee/smith/hammer(src) @@ -90,6 +92,7 @@ /obj/item/smithing/scytheblade name = "smithed scythe head" finalitem = /obj/item/scythe/smithed + icon_state = "scythe" /obj/item/smithing/scytheblade/startfinish() finalitem = new /obj/item/scythe/smithed(src) @@ -99,6 +102,7 @@ /obj/item/smithing/shovelhead name = "smithed shovel head" finalitem = /obj/item/shovel/smithed + icon_state = "shovel" /obj/item/smithing/shovelhead/startfinish() finalitem = new /obj/item/shovel/smithed(src) @@ -119,11 +123,14 @@ /obj/item/smithing/javelinhead name = "smithed javelin head" finalitem = /obj/item/melee/smith/twohand/javelin + icon_state = "javelin" /obj/item/smithing/javelinhead/startfinish() var/obj/item/melee/smith/twohand/javelin/finalforreal = new /obj/item/melee/smith/twohand/javelin(src) finalforreal.force += quality finalforreal.wield_force = finalforreal.force*finalforreal.wielded_mult + finalforreal.AddComponent(/datum/component/two_handed, force_unwielded=finalforreal.force, force_wielded=finalforreal.wield_force, icon_wielded="[icon_state]_wield") + finalforreal.throwforce = finalforreal.force*2 finalitem = finalforreal ..() @@ -131,6 +138,7 @@ /obj/item/smithing/pickaxehead name = "smithed pickaxe head" finalitem = /obj/item/pickaxe/smithed + icon_state = "pickaxe" /obj/item/smithing/pickaxehead/startfinish() var/obj/item/pickaxe/smithed/finalforreal = new /obj/item/pickaxe/smithed(src) @@ -151,6 +159,7 @@ /obj/item/smithing/prospectingpickhead name = "smithed prospector's pickaxe head" finalitem = /obj/item/mining_scanner/prospector + icon_state = "minipick" /obj/item/smithing/prospectingpickhead/startfinish() var/obj/item/mining_scanner/prospector/finalforreal = new /obj/item/mining_scanner/prospector(src) @@ -165,6 +174,7 @@ name = "smithed shortsword blade" finishingitem = /obj/item/swordhandle finalitem = /obj/item/melee/smith/shortsword + icon_state = "gladius" /obj/item/smithing/shortswordblade/startfinish() finalitem = new /obj/item/melee/smith/shortsword(src) @@ -175,6 +185,7 @@ name = "smithed knife blade" finishingitem = /obj/item/swordhandle finalitem = /obj/item/kitchen/knife + icon_state = "dagger" /obj/item/smithing/knifehead/startfinish() finalitem = new /obj/item/kitchen/knife(src) @@ -185,25 +196,45 @@ name = "smithed broadsword blade" finishingitem = /obj/item/swordhandle finalitem = /obj/item/melee/smith/twohand/broadsword + icon_state = "broadsword" /obj/item/smithing/broadblade/startfinish() var/obj/item/melee/smith/twohand/broadsword/finalforreal = new /obj/item/melee/smith/twohand/broadsword(src) finalforreal.force += quality finalforreal.wield_force = finalforreal.force*finalforreal.wielded_mult + finalforreal.AddComponent(/datum/component/two_handed, force_unwielded=finalforreal.force, force_wielded=finalforreal.wield_force, icon_wielded="[icon_state]_wield") finalitem = finalforreal ..() /obj/item/smithing/halberdhead name = "smithed halberd head" finalitem = /obj/item/melee/smith/twohand/halberd + icon_state = "halberd" /obj/item/smithing/halberdhead/startfinish() var/obj/item/melee/smith/twohand/halberd/finalforreal = new /obj/item/melee/smith/twohand/halberd(src) finalforreal.force += quality finalforreal.wield_force = finalforreal.force*finalforreal.wielded_mult + finalforreal.throwforce = finalforreal.force/3 + finalforreal.AddComponent(/datum/component/two_handed, force_unwielded=finalforreal.force, force_wielded=finalforreal.wield_force, icon_wielded="[icon_state]_wield") finalitem = finalforreal ..() +/obj/item/smithing/glaivehead + name = "smithed glaive head" + finalitem = /obj/item/melee/smith/twohand/glaive + icon_state = "glaive" + +/obj/item/smithing/glaive/startfinish() + var/obj/item/melee/smith/twohand/halberd/finalforreal = new /obj/item/melee/smith/twohand/glaive(src) + finalforreal.force += quality + finalforreal.wield_force = finalforreal.force*finalforreal.wielded_mult + finalforreal.throwforce = finalforreal.force + finalforreal.AddComponent(/datum/component/two_handed, force_unwielded=finalforreal.force, force_wielded=finalforreal.wield_force, icon_wielded="[icon_state]_wield") + finalitem = finalforreal + ..() + + /obj/item/stick name = "wooden rod" desc = "It's a rod, suitable for use of a handle of a tool. Also could serve as a weapon, in a pinch." @@ -215,4 +246,4 @@ name = "sword handle" desc = "It's a rod, suitable for use of a handle of a tool. Also could serve as a weapon, in a pinch." icon = 'icons/obj/smith.dmi' - icon_state = "stick" + icon_state = "shorthilt" diff --git a/icons/obj/smith.dmi b/icons/obj/smith.dmi index 7a34789020437232cc3a16818b10883d6e5254ea..4893018b231d97d2b23055573315f4c6a70e97c0 100644 GIT binary patch literal 3210 zcmV;540ZE~P)GdPftxb6--P_rKP1Q6cjc#HdRqZfFDZ*Bkpc$|%t&u+pn493sxQ&ez86R=%( znLrbV@d}e^+{PnKs>HN|r(Z^=X*+;@i=|)vr=R`JtC#KTZeMNQcIALEQSjAs_4KeT zi;)c596YYe!XmYnrywyf=I0FjKyFqRhGNR`sw|oa9Zv6G>f{^plq?z%O-%Li7FF25 zsSn>xte1<`YVqeo3+{kXE>Jr-cOjw(9)ZDw-0&Ep2~8t{7P=0jh_w!Akh|-k#&-+e zIGIg7LR7LY_*RL2z<`dta&T?0Hbl1MSR@ZIfVuvC9jZ!t8Ie?wDq9Z@ndPCg=7vs5 zmGg&Hhz=%(Aj>nt5iXF6i==_JRcvs5Vh2g?a7w2ddb&jwO1=#WWwOh_=S^kq8BN~M zy!Y~fX2S2}empK~#90?VXKZ z6E_&gQ*9}5P^@ljvrw+0t1!2+O|-ICH($1?dqH6`6xjyV;XZTtGMvcXYvsRQatE|Z z@;u2s7sC1JPei%o((f;Ml3df=!C0b|a{KaowjbJSR6yFTfj#MMhxYC@agfS5H6Y<< zdpisaq%vDAkd;bylIpmjI_3P_K$mtIE&MFoEs+G2(~AVEiB8V%r9DZCfq_5Yv5UaT?1LjoVIxElMOt_zoQ1yJotNhcsG#6kfwp> z`C~TF3niwR*BREoWE#^nu#G=n1G!uukjk+=-T>T*%s@v+M-={84dnLa^Wf`yJ)Tfn zHV<@k?2p2)JCU^*P&&x%>+6OA_#nyzzq|!d12X;yEub=h)_U3t$H1{80=@9proU_?aStSjPd_fP&xLfV>HG>t9R;Qhv;Uia&}0Nh!Vi zbou3DD8mdW`Lzu+uZ1KA4EQ|-KWsqFul;@?3&oEjjQlUZLLWo7so6Q6`Jtr~$0!T@Z6#R;oxXa3i&nzHOgtpfR2Uc>R2e90 zm2faK6d#VU3Ihed7s@O$NYnwf6$kv71La(1J3WzKv4f`{-Gh%fouLjzf|z0 zX@cKF9URQK44?wVUk$H4c0CBcuze^WO2kj1-VewC_|3bm{8UL~; zc=(~m&tcz`C|04L?_i&w_}0cAJ;nL?P6Cy2y8cZUw*ABD^0J0-e(477xHL3GY=77M zZx9>UJ^vdd18shi+Wap#Ka<{^5Sw;@9}#?q0H$5QPugL*8~Cw11R(7O{$$rbZHF0& zUu@hZ^K0KBAQi3tQwgsB;JVfG$Ttwvb{G@tKiu|Bo}HZWvsC!j!J}EQ$B(RBi+gT1 z{!J0K;6rx^pagLJm$e-b1l}QVWEe$&;-`$CPj&#uPx)xMjFkYzzsC7Q2k;#N!{`Do zEO9jWm2e$9=9++}V{azgz_B;qO0zs*lkoBze;e>WPIwyf9xaf*X+G>7&2 zKaL^*8b5Io%L4FMQT|h>aDG|@O`Jg6K+XRiTK}isNBBQD{sH#-peDvoo|uSwa0k_XCAK`nZblpU!r^e@dPF$*0PsGiT0pb#=J0fFOP?0~04slK9VE;0^!-6n>V; zWYXz$Dg}MGz&ikp2&#IK^Yd0vW+3rv86c^8;oP|@0}NzOQ~0eLs9xj&#Mnh3g5Zbf zApEv<>B|eE{x5#zl!Bm3Uw>V_^i6X4xr0kzak-{QoF*rC{3S16@usF?Dr}HF6o#lMW5And_H{C2)S12H4EpEUf_72DpQ(S1IR<2y$wG zP0j70IB?qqgl6V$Tt=?U=G95gBZytQeq+|V@;#JgeqNnszX9M+pSWgcr>@LhRz5nJ z^ZzifOtantDwTl&%)%AMyty07O3?)bOx7qkqpDe07~1`!Rt3W^G#ZU|al|ffjr%etvB#IXJJ{ zAiG$*6*vHkjK2S^GB#$2&lLOde^TXMyeS-j1&&1DLCOt`8RGLMFu5>Yx?STAz$^rQ zVIUYj4e+^SF{IGa&r6JV11QVr2*i(Bt5g;i4DtCuq?@s}bbCqsb8`{OH45?Ljbn_@ z7Pb%#|!`((b?T?PfLrnAb1D{MxAcZUAny}!k@xl9*vdARJ;S;r#Y@ zcw?&Fip*awL*0AFv>26tlz4-LW0lbdRPAy(9)HLh*%jeWP_o14MOV_F?$nphfxp6X zw~O=VTr*JQsQ!Ps^J_c>_2qk&{L6Rm#`7Xl-MM!^hEkyVzq|b4!Eehkyof?~Rv!LB zEu$~LPs#uL@}t$qt7{e=JY4yM=z#MB{rAu1wY6274(|N5^7lWK0`frpZ))waH3#?q zUAgz`3ZVcfewwoA;NHE5-S_`fCS!1V{KCN_TMoK;KTr-u*wd4A`Go_Uqv^xH<;St7 z_n6FItB-6tkWXmX)06o8rGNdf_SoWB%I9Rs!8q%mYt?28$eI9qdQTo4|F`Rb84+37 z)06UjX8Z=K*X#Tnu@Lm>Nrv@rpeJ11LxW@?*56NQCIMf6Qg4t9#QXaxjl}smd;KY` z0o=XA75wYnz|cL w8|w+?XWiY6Mq_<{907*qoM6N<$f;S0A;Q#;t literal 484 zcmVV=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6#a*U0*I5Sc+ z(=$pSoZ^zil2jm5DKW1sGe?PwGbOXA7|1u|;!G<_%uR)`;i^jW(lYZhi!)MF2r4Zu z$xP11rHV5nzofVzALIxl106#{9YZc<1y?^8u+sso;WnD7R_vVs007)cL_t(YiRF+n z4#F@DMQw>P+dToP#64ILoPaWN3dG2O5XZ(2D7aOKCBjgF+ac+Hd3Fjgi9$|A=A&76 zspyq=At717?mhzA$pM)k6#@1PUjWDff(sN{@L-0_HPPhR!Zs9h>5<8a3G=XI@}k6V z00Kseu>vGZWO-DnV