From 3e4c5c8e09ba9133c679e420bf91c67012729d84 Mon Sep 17 00:00:00 2001 From: Kaedwuff Date: Sun, 5 May 2019 16:41:50 -0500 Subject: [PATCH] Adds Drafting Chalk (#6301) * Chalktime * Now more chalkable * Now public access. * typofix * stfu lohikar god * redundafix * arrowfix --- aurorastation.dme | 1 + code/game/objects/items/draftingchalk.dm | 117 ++++++++++++++++++++ html/changelogs/Kaedwuff Drafting Chalk.yml | 41 +++++++ icons/obj/crayons.dmi | Bin 732 -> 2413 bytes icons/obj/smooth/chalkline-smooth.dmi | Bin 0 -> 810 bytes icons/obj/smooth/chalkline.dmi | Bin 0 -> 490 bytes maps/aurora/aurora-4_mainlevel.dmm | 7 +- maps/aurora/aurora-6_surface.dmm | 2 + tools/SS13SmoothingCutter/Cutter.dm | 24 ++-- 9 files changed, 179 insertions(+), 13 deletions(-) create mode 100644 code/game/objects/items/draftingchalk.dm create mode 100644 html/changelogs/Kaedwuff Drafting Chalk.yml create mode 100644 icons/obj/smooth/chalkline-smooth.dmi create mode 100644 icons/obj/smooth/chalkline.dmi diff --git a/aurorastation.dme b/aurorastation.dme index 7017ca0edeb..5c08d640d6c 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -740,6 +740,7 @@ #include "code\game\objects\items\bodybag.dm" #include "code\game\objects\items\contraband.dm" #include "code\game\objects\items\crayons.dm" +#include "code\game\objects\items\draftingchalk.dm" #include "code\game\objects\items\eightball.dm" #include "code\game\objects\items\glassjar.dm" #include "code\game\objects\items\latexballoon.dm" diff --git a/code/game/objects/items/draftingchalk.dm b/code/game/objects/items/draftingchalk.dm new file mode 100644 index 00000000000..37b0af1a12d --- /dev/null +++ b/code/game/objects/items/draftingchalk.dm @@ -0,0 +1,117 @@ +/obj/effect/decal/cleanable/draftingchalk + name = "chalk marking" + desc = "A line drawn in chalk." + icon = 'icons/obj/smooth/chalkline-smooth.dmi' + icon_state = "preview" + color = "#FFFFFF" + layer = 2.1 + anchored = TRUE + smooth = SMOOTH_TRUE + +/obj/effect/decal/cleanable/draftingchalk/Initialize(mapload) + . = ..() + if (mapload) + queue_smooth(src) + else + smooth_icon(src) + for (var/obj/effect/decal/cleanable/draftingchalk/C in orange(1, src)) + smooth_icon(C) + +/obj/item/weapon/pen/drafting + name = "white drafting chalk" + desc = "A piece of white chalk for marking areas of floor." + icon = 'icons/obj/crayons.dmi' + icon_state = "dchalk" + color = "#FFFFFF" + var/colorName = "whitec" + +/obj/item/weapon/pen/drafting/afterattack(turf/target, mob/user, proximity) + if (!proximity || !istype(target, /turf/simulated) || target.density || target.is_hole) + return + + to_chat(user, "You start marking a line on [target].") + + if (!do_after(user, 1 SECONDS, act_target = target)) + return + + for (var/obj/effect/decal/cleanable/draftingchalk/C in target) + qdel(C) + + to_chat(user, "You mark a line on [target].") + + var/obj/effect/decal/cleanable/draftingchalk/C = new(target) + C.color = color + target.add_fingerprint(user) + +/obj/item/weapon/pen/drafting/red + name = "red drafting chalk" + desc = "A piece of red chalk for marking areas of floor." + color = "#E75344" + colorName = "redc" + +/obj/effect/decal/cleanable/draftingchalk/red + desc = "A line drawn in a red chalk." + color = "#E75344" + +/obj/item/weapon/pen/drafting/yellow + name = "yellow drafting chalk" + desc = "A piece of yellow chalk for marking areas of floor." + color = "#E1CB47" + colorName = "yellowc" + +/obj/effect/decal/cleanable/draftingchalk/yellow + desc = "A line drawn in a yellow chalk." + color = "#E1CB47" + +/obj/item/weapon/pen/drafting/green + name = "green drafting chalk" + desc = "A piece of yellow chalk for marking areas of floor." + color = "#6CD48F" + colorName = "green" + +/obj/effect/decal/cleanable/draftingchalk/green + desc = "A line drawn in a green chalk." + color = "#6CD48F" + +/obj/item/weapon/pen/drafting/blue + name = "blue drafting chalk" + desc = "A piece of blue chalk for marking areas of floor." + color = "#9FC8F7" + colorName = "bluec" + +/obj/effect/decal/cleanable/draftingchalk/blue + desc = "A line drawn in a blue chalk." + color = "#9FC8F7" + +/obj/item/weapon/pen/drafting/purple + name = "purple drafting chalk" + desc = "A piece of purple chalk for marking areas of floor." + color = "#a489c2" + colorName = "purplec" + +/obj/effect/decal/cleanable/draftingchalk/purple + desc = "A line drawn in a purple chalk." + color = "#a489c2" + +/obj/item/weapon/storage/fancy/crayons/chalkbox + name = "box of drafting chalk" + desc = "A box of drafting chalk for drafting floor plans." + icon_state = "chalkbox" + icon_type = "chalk" + can_hold = list( + /obj/item/weapon/pen/drafting + ) + +/obj/item/weapon/storage/fancy/crayons/chalkbox/fill() + new /obj/item/weapon/pen/drafting/red(src) + new /obj/item/weapon/pen/drafting(src) + new /obj/item/weapon/pen/drafting/yellow(src) + new /obj/item/weapon/pen/drafting/green(src) + new /obj/item/weapon/pen/drafting/blue(src) + new /obj/item/weapon/pen/drafting/purple(src) + update_icon() + +/obj/item/weapon/storage/fancy/crayons/chalkbox/update_icon() + cut_overlays() + for(var/obj/item/weapon/pen/drafting/chalk in contents) + add_overlay("[chalk.colorName]") \ No newline at end of file diff --git a/html/changelogs/Kaedwuff Drafting Chalk.yml b/html/changelogs/Kaedwuff Drafting Chalk.yml new file mode 100644 index 00000000000..fdd10577330 --- /dev/null +++ b/html/changelogs/Kaedwuff Drafting Chalk.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: Kaedwuff + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Added drafting chalks to the game, which can be used to draft out construction plans on floor turfs. A box can be found in the engineering lobby and the secondary tool storage on the surface." diff --git a/icons/obj/crayons.dmi b/icons/obj/crayons.dmi index 7ebabd5a81ef5bdfce1a76163e72b1fc54133f4a..afeb89474d35bed27d9c51316b39fa51afdc8563 100644 GIT binary patch literal 2413 zcmb7Gdo{Q0=)ZU{3I%vNgW{v1n@D@)g#6#C_3O`Xk<)i1O@=&?_B@bES<7v7lY?n zG=2})MeV--@v!uF={@eh?9G=CyR888iJ+wK8s}MMeS2{j2)MD8@ri%$I)*x&gz(J{GIvXq;t8eASSOP zfZ*+qxoRKXre#n-+UJlaXYArJ^Tv!+l|H)5R6I;pd`ouw%ZhDU&u0Dh_kdBqo|X;E z8&_3x6^z7kUeq=DRh33nWgLr!AJ|8;;y8cuK}Pow)|nF;)skG=6m4p`jNr2;c@f#M zs=Bm-i*vj<;_)_6ZtwotKKUEW0wJ)jh_UZs3wl=?2~2EBqp1b4l2wfjtY)PHU6oYf2FocC82x70nI^EuGB6rm<;817+&Fx5V7S{;Y3LQm16mOI( z7lv++e@U7AHsUZo?~b^^-NcP@icMQaG^CCEr$2|pH*5_vm~l3fl0|j^RQi{Gx>FC| zjnk2aGj z31E=895}G3d6W@EL;zlRpmW$r%1r=*$7&S=)XcDe2@eE#4S@Jc(9tpLj11`4o4fui zAb%UFzgDD}6E&(oR3 zSahHIS4~EyOZY&JZzsKTHobK6ZK>w~KZ}zeD8jBT_R)TQxM|1eyV|Pg`L}1wls1a8 zw~;6@^gOA+XU?Lna&pcw&g6V#s8$U$%ef6D$PLSM=@*rwTN$w_>q%j0G_RMl~^x%Qj4+$H}0mRhF7=jC_uzn08C^8y*1thcj`19_grH>xpTkAP~LY03#N6~kG4 z3@ga~XhX=&ZBEh-ztZhItdburo(D?XPUCLL_2qw_lX-KE`b0Utxqo{Ki*Y^gc-&p) z1tsvEKbzaGaZ@oY8Vwx3@9fsedw);?Qx!BJ`cUcwrjZzwrbx6Ro!7@}CdW(}(AWWtV`awHLg)$@016Rd{Vv-4t=JVwfzZEtMvZIA zSZIjEbJj(d=X3zTG;yZSMf==NX3_KJzKNOmUXV}wg;?APYi|?TtXm;VOJ*xz@rB&S z*)bxSFNeh|h99S%pkDq{HTwT=A+W$p=tIcvRJ^wmnQ6Hc?70)+%f78lW>zuV+7_r= zLo4%xVa}DmEBR1|>oJTns&Jv>ZNf<&p9f1nK;_s6ox(MnBOz2}Rn_$YBN6)RxFkm3 z8C0^GnrP7rEIr$& zme_L*?SOZVB|i3G0mLBB?D46Kw4dwx_d}5J#D@=cQIldot*XUi-c46?Pmm(#bT}5j zhKGFn_Kh9V=>HkD;NG_d)gGv4V2PS-Q|kdsIHiVM{M_=TV!j#DKLP?@ZXuAi@P`yh zl(n^l@5q@aREqc4#-gb)U2{RPsl~Q8>PGeF7}}QRmw(vfJu|ERW-YQXhbw%DBat#N zpdyGPqqp41=dfYT>V&E0BjVW%Zktwd9{z%(h*8vao4w?t)9_ClR+3OyLdysB2&;&} zhWWF25{U#{CUrbB^!whZ!U`VtWoM~m4%Pa3VWIjg?@jHR%1WKZTM&-k|NUtR#Y_Z9+l(%YDH6_Xz$^wpin`osz#Sk$2WC~U7@l#3 z6TvxbbcG{(_R-?cqXzC?7LS9NjodN|IJvD{(GpIsxA@-};0t=GFmJ!uAAVKve*)~R LPg>Pj_+9=NIXrCx literal 732 zcmV<20wev2P)C0001HP)t-sz`($& z007r{9L9_WhPM?`2M5{!0Hss||C0cSWFr6a0AYj=sOB92qtd1T#F;b900000f~Wwu z?|}^e+5rCmGt8L)|7T}s0095CwzmKO|K@W5!C?UZphEwC0B=bol3_5wz`(p5rXc_T z00DGTPE!Ct=GbNc006OiR9JLGWpiV4X>fFDZ*Bkpc$|%rJr2Vl3`S=-1xog+e`}X2 zQIw&%0~8mK2t!}&#uL_?fOA9x1K)%lZ!!I#Cf;pY;ii<5>7|X zEI4EH7E+cON?F}et}!6!iZksnmEM7~2g(t)`iqPxg8?GEg7^rzlrH!;`(kkb*&lG3!3emh=|Cw9n2$` z$1qP|o@RD~ys#UTmEB-p+YQnzh5Q`yOUU1w^Bv?zkRL;Sg8BCSM{xf!+h*{6!`CrzI0!GcncpM2}A#ep6uc8xRo@3GE#N%^r>?005u_0{{R3dEt5<0000IP)t-sz`(%a z;o;28%+k`*|NsBMz`)w~)g%A_00DGTPE!Ct=GbNc006IgR9JLGWpiV4X>fFDZ*Bkp zc$|%sF$%*l3`J-A6egKn>ey?Sl29@bhK)2$*>BHmmBv7la!)=^Y ze;?&WiNhN5+`{}#aepm8ofcZgbhff2tp<4@|jnG)9{9!QKfcQCNg=Pg_Fv}4Q#FvecSbkE< zuR|i9B=HWP5CdB0lqD$|f#^bi!U#*N%PX#JD-fQP^LOx@0XCJ)?i{9_;scFSObFk! zeF(%4O4au5Z2V|@pYVz9x4GR3Xy;F^!jBM60O51U4rqv~A9U3Z9^h3!SpA?z|L+G=n$6%nB!3tSr1Aei`Q+Sf(@AU@L2f~DtCBR zHY~pUq`*fApF`#UF7tyVzVTN7N9EDydTj&)J^EY^KSJ~zHWAG8=<{VCvAhc;1%AsO z`JQC;fN}mAG@k3^rbvkGXMYp07*qoM6N<$f_gE0CjbBd literal 0 HcmV?d00001 diff --git a/icons/obj/smooth/chalkline.dmi b/icons/obj/smooth/chalkline.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9904113cdce1f43431c751b89e5a8c8517333273 GIT binary patch literal 490 zcmVV!Y($dl-$Xyx$0004WQchCV=-0C=2J zR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6#a*U0*I5Sc+(=$pSoZ^zil2jm5 zDJj1~iHkEOv#1!zGvwk-D@x2wg|Ojjax(K$2`WlX%_~VQiZ>xvp#?65$_lQ2E?~a^ z03}O10(<=_Hvj+u07*naR7i=vlnV}nAPj~nT%h6wcpYMq)rE;3Rl3sc!)J3C)KT+x_$7 z_8G&N9NU;Cgn9mC>stf7$42IqqiIEq