From 32ef32d5a0a761c9a050162facc0e3cab455d6fa Mon Sep 17 00:00:00 2001 From: Mora <46364955+TrixxedHeart@users.noreply.github.com> Date: Mon, 4 Aug 2025 15:39:40 -0800 Subject: [PATCH] Add Offset Canes + Trinket Canes Group (#39272) * Added offset cane * Added offset cane colors * Added canes to the trinkets menu * added color to names instead of suffix * removes some stripes from the mime cane icon * update file organization * standard -> standard.rsi, stop making commits at nearly 3 in the morning. * updated comment to be more explicit in what doesnt work * Cane refactor :godo: * git makes me very upset sometimes (fixed cane yaml) * wooden->wood * apparently this didnt push * Standardize comments * Removed comment * Removed comment * Adds red accents to mime cane * Indent fixes --- .../Objects/Weapons/Melee/offset_cane.yml | 85 ++++++++++++++++++ .../Loadouts/Miscellaneous/trinkets.yml | 68 ++++++++++++++ .../Prototypes/Loadouts/loadout_groups.yml | 6 ++ .../Recipes/Lathes/Packs/medical.yml | 2 + .../Prototypes/Recipes/Lathes/medical.yml | 16 ++++ .../Melee/offset_canes/clown.rsi/icon.png | Bin 0 -> 761 bytes .../offset_canes/clown.rsi/inhand-left.png | Bin 0 -> 2676 bytes .../offset_canes/clown.rsi/inhand-right.png | Bin 0 -> 356 bytes .../Melee/offset_canes/clown.rsi/meta.json | 30 +++++++ .../clown.rsi/wielded-inhand-left.png | Bin 0 -> 637 bytes .../clown.rsi/wielded-inhand-right.png | Bin 0 -> 640 bytes .../Melee/offset_canes/mime.rsi/icon.png | Bin 0 -> 711 bytes .../offset_canes/mime.rsi/inhand-left.png | Bin 0 -> 2599 bytes .../offset_canes/mime.rsi/inhand-right.png | Bin 0 -> 280 bytes .../Melee/offset_canes/mime.rsi/meta.json | 30 +++++++ .../mime.rsi/wielded-inhand-left.png | Bin 0 -> 608 bytes .../mime.rsi/wielded-inhand-right.png | Bin 0 -> 607 bytes .../offset_canes/nanotrasen.rsi/icon.png | Bin 0 -> 731 bytes .../nanotrasen.rsi/inhand-left.png | Bin 0 -> 2630 bytes .../nanotrasen.rsi/inhand-right.png | Bin 0 -> 309 bytes .../offset_canes/nanotrasen.rsi/meta.json | 30 +++++++ .../nanotrasen.rsi/wielded-inhand-left.png | Bin 0 -> 639 bytes .../nanotrasen.rsi/wielded-inhand-right.png | Bin 0 -> 637 bytes .../Melee/offset_canes/standard.rsi/icon.png | Bin 0 -> 675 bytes .../offset_canes/standard.rsi/inhand-left.png | Bin 0 -> 2601 bytes .../standard.rsi/inhand-right.png | Bin 0 -> 278 bytes .../Melee/offset_canes/standard.rsi/meta.json | 30 +++++++ .../standard.rsi/wielded-inhand-left.png | Bin 0 -> 596 bytes .../standard.rsi/wielded-inhand-right.png | Bin 0 -> 596 bytes .../Melee/offset_canes/wood.rsi/icon.png | Bin 0 -> 668 bytes .../offset_canes/wood.rsi/inhand-left.png | Bin 0 -> 2638 bytes .../offset_canes/wood.rsi/inhand-right.png | Bin 0 -> 314 bytes .../Melee/offset_canes/wood.rsi/meta.json | 30 +++++++ .../wood.rsi/wielded-inhand-left.png | Bin 0 -> 632 bytes .../wood.rsi/wielded-inhand-right.png | Bin 0 -> 632 bytes 35 files changed, 327 insertions(+) create mode 100644 Resources/Prototypes/Entities/Objects/Weapons/Melee/offset_cane.yml create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/wielded-inhand-right.png diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/offset_cane.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/offset_cane.yml new file mode 100644 index 0000000000..1d2081fe93 --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/offset_cane.yml @@ -0,0 +1,85 @@ +- type: entity + parent: BaseItem + id: OffsetCane + name: standard offset cane + description: A standard offset cane, essential for getting around when your legs aren't up to the task. May or may not grant you the wisdom of the elderly. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/offset_canes/standard.rsi + state: icon + - type: Item + size: Normal + sprite: Objects/Weapons/Melee/offset_canes/standard.rsi +# - type: RandomSprite # Ideally I'd rather these be their own selectable item instead of randomly picked. +# available: +# - color: "#91949C" # standard gray +# - color: "#000000" # black +# - color: "#406BDE" # blue +# - color: "#00FFFF" # cyan +# - color: "#00FF00" # green +# - color: "#FF69B4" # pink +# - color: "#800080" # purple +# - color: "#FF0000" # red +# - color: "#FFFF00" # yellow + - type: MeleeWeapon + wideAnimationRotation: 45 + damage: + types: + Blunt: 5 + - type: StaminaDamageOnHit + damage: 5 + - type: Wieldable + - type: IncreaseDamageOnWield + damage: + types: + Blunt: 3 + - type: UseDelay + delay: 1 + +- type: entity + parent: OffsetCane + id: OffsetCaneClown + name: rainbow offset cane + description: A rainbow offset cane, perfect for clowns and those who enjoy a splash of color in their lives. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/offset_canes/clown.rsi + state: icon + - type: Item + sprite: Objects/Weapons/Melee/offset_canes/clown.rsi + +- type: entity + parent: OffsetCane + id: OffsetCaneMime + name: striped offset cane + description: A black and white striped cane, perfect for silent performances. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/offset_canes/mime.rsi + state: icon + - type: Item + sprite: Objects/Weapons/Melee/offset_canes/mime.rsi + +- type: entity + parent: OffsetCane + id: OffsetCaneNT + name: nanotrasen offset cane + description: A nanotrasen standard issue offset cane with the NT logo, favored by those who prefer a more corporate look. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/offset_canes/nanotrasen.rsi + state: icon + - type: Item + sprite: Objects/Weapons/Melee/offset_canes/nanotrasen.rsi + +- type: entity + parent: OffsetCane + id: OffsetCaneWood + name: wooden offset cane + description: A wooden offset cane, a classic choice for those who appreciate natural materials and a sturdy grip. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/offset_canes/wood.rsi + state: icon + - type: Item + sprite: Objects/Weapons/Melee/offset_canes/wood.rsi diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml index 2649dfa958..ccaf3abe42 100644 --- a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml +++ b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml @@ -233,6 +233,74 @@ - ClothingNeckGenderfluidPin groupBy: "pin" +# Canes +# The white cane is intentionally not included here. Thats for the blind. +- type: loadout + id: OffsetCane + storage: + back: + - OffsetCane + groupBy: "canes" + +- type: loadout + id: OffsetCaneWood + storage: + back: + - OffsetCaneWood + groupBy: "canes" + +- type: loadout + id: OffsetCaneClown + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobClown + time: 3600 # 1hr + storage: + back: + - OffsetCaneClown + groupBy: "canes" + +- type: loadout + id: OffsetCaneMime + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobMime + time: 3600 # 1hr + storage: + back: + - OffsetCaneMime + groupBy: "canes" + +- type: loadout + id: OffsetCaneNT + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:DepartmentTimeRequirement + department: Command + time: 18000 # 5hr + storage: + back: + - OffsetCaneNT + groupBy: "canes" + +- type: loadout + id: Cane + effects: + - !type:JobRequirementLoadoutEffect + requirement: + !type:RoleTimeRequirement + role: JobLibrarian + time: 3600 # 1hr same as Jamjar. + storage: + back: + - Cane + groupBy: "canes" + # Towels - type: loadout id: TowelColorWhite diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 32f73bbf83..333d914225 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -36,6 +36,12 @@ - ClothingNeckTransPin - ClothingNeckAutismPin - ClothingNeckGoldAutismPin + - OffsetCane + - OffsetCaneWood + - OffsetCaneClown + - OffsetCaneMime + - OffsetCaneNT + - Cane - TowelColorBlack - TowelColorDarkBlue - TowelColorDarkGreen diff --git a/Resources/Prototypes/Recipes/Lathes/Packs/medical.yml b/Resources/Prototypes/Recipes/Lathes/Packs/medical.yml index 6e855f393d..0b6cccf78b 100644 --- a/Resources/Prototypes/Recipes/Lathes/Packs/medical.yml +++ b/Resources/Prototypes/Recipes/Lathes/Packs/medical.yml @@ -44,6 +44,8 @@ - DiseaseSwab - BodyBag - WhiteCane + - OffsetCane + - OffsetCaneWood - type: latheRecipePack id: RollerBedsStatic diff --git a/Resources/Prototypes/Recipes/Lathes/medical.yml b/Resources/Prototypes/Recipes/Lathes/medical.yml index 2f968893b1..bd3ee3773d 100644 --- a/Resources/Prototypes/Recipes/Lathes/medical.yml +++ b/Resources/Prototypes/Recipes/Lathes/medical.yml @@ -217,6 +217,22 @@ Steel: 100 Plastic: 100 +- type: latheRecipe + id: OffsetCane + result: OffsetCane + completetime: 2 + materials: + Steel: 100 + Plastic: 100 + +- type: latheRecipe + id: OffsetCaneWood + result: OffsetCaneWood + completetime: 2 + materials: + Steel: 100 + Wood: 100 + - type: latheRecipe id: LauncherSyringe result: LauncherSyringe diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..de4d7464b37b3aa20f5b5c7386dab9a693689f5d GIT binary patch literal 761 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0U@Xscb`J1#c2)=|%1_J8No8Qr zI6rmbUhl&W636Cm^K#XeeWUP5U}2Xtx2vPf(x%u|&e8{0c^COcDS94Ob?sXH;88$< zKKl~-4F`_Jvf-ZON{Eb?2Qavyk2w!Y93E*eTy1C1t@rbf-i*^bBX`Yyp*htm;%!3MGqsNvg?CI=ttpi& zoZOM7`)noOMX9!C86%HiF|Ab*&5YuntHe^j?bg5gMR$RdoLjuKX+hDH0JZ$4D_W&j zSG-!1ZNhuS<(>WKk}oGY_gAa%me^O`yR9K`k5Q`h{BNsIdyW|jRI%u-*|y)w(zkv> zTz>XPW`$jxb7HrdmWo^4XJV7jY1Q`CbkSb%`oL?=3-JtWc@6hO?N?v3^Lxiw**x!s z)Q#Kh$6ow@@yh(|+YF|I_b2TI#zaVfPl)RiX67qQOlO#w{`WAfWn!|jvU=OZurrlG zN=iyjPVWC(hMj8|7#h?VQe+v5lo;Y=3Rf^mt0}mfQeE*NFqF7R}5 z46*RvdigfrAq4@J3-n)*pUU`psyt-J}l za-^2#On2COTUb`X<-^U+EuxtWij9v?-gEuKw4{`6Mh??k$)hRUJGRKq;$(k#&e5L5 zn)$E6B1OT3YL*{zO|Or9W4N=-dX_kU$8Po~wXFS-clIaL?YppuL8ZLmOI~Bqd8QM-V77#iNZiy3cu%~WAf#895(mXt-p^uQjR52cweN5H?z4S&F1d1XC{=#t&3SWo zmX2rkaW&%!+rm8~acS-RmkDfTdgrUBm^=P8I{(;(zxXz9KK{rD)z=Swa(-wOdphVn zGk<*9Tll^=kCdJMbcA2`*xE^LvgGk4!Ruqm(TlFrfjx8fEppnP|6b>l?bTf`oEy#v z8%Jy-3)YTTJuudjQQw-(tlgOTxar2p(ESf^+TIIuC)?|0a@#{8|DuI|-G1)i`Bp zXm7@{Hs#lYpPl~}eU0mR=|G@=OK)Og^4Ni@2T#0HPJbkf{pRw$n{U)Tiw!;f+LP*u z3G(dVrH>CJ`^Rs?{V(13@{IEG-opeul=@#vj=p_k=;D7W&Q+Ai>O(6|HLXWK%aYKV zwgAhrf1fog`zV%u55u-BBWn7!s=jqg`D`|eBxSoVjiI+vy``xY&Ey`~Z%4bvR80KA>R(P-p>UbDNMaf58 zdGR=bi-M0>?`WhO6+euL!5$U1_B6GDo=w0b5Gz-dm3q@GA|#;BW%YPG6wOc!Lm~yKbxS&*CMB&h2gzgVp$1e@(M4Ip4J;p)le&*Ud6)^JZ$Kc8 zCh~k^Y|=Gdpg1(JqYWVe#n7~yq#2U&7<sBDu0yR0Q0vPCml3rO@Oo=D8scR)QXiS;8#)Sxl(ll2r=vQ%#p`zZX zT2xFZrrJ;zR01e!l%yIrzZU=n<1m31*AUTK)S|ee_?GD#P*f4NUIs}coU8W{#;U9! z15sejk73}lyMZlCx&)V%w9_y`x*Y(JZl}ZLaXUR>+71gGPSSK<0?^IZjXly!$_D6N8AF#0|D3~pb+1zipaZsd}=-hM?f4WV*@np0;Gcp+ey0v zI7p8@Y$I(E7Xs5f4}p`wjUuwOAad&ruG#fIo=u(KuMFQx5=BtxvEaNc+Ab^X3?#NMySe#i_#bs zFIy-fyQt_Y6@Q=jBf5r~dg@x@ke@mY`@@Hq?oXFzNj$Ku?C4G17!vFi@-s2S)IzAnHsMq>Y z;s;x@*Pf9V_jXszn0Ly$AZ8DC^zW$IUprIVIs2}|Cw@}d+fbd>mc~YAzJGA2;eZc2 X`uxvlQ#FTbjsFo`psD^~T}R*NGJ}l| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/clown.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..5cb35c758fe6ed7378e8a7376543b4b40c00a893 GIT binary patch literal 356 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`1k1^9%xT3K2B?_qet%>4f?14DzFl0#pyW>c7a;{X5ufl4YD8At*tu96_X zV4w&DFl;)ba~>$lS>O>_%)r2R5QG_bOw0zFz_8QP#W5tp{p~bwzQYC_tdp17-~WH; zpr|1Sv))Sc-Wj|{{N*gQBTn@%QDB`avSh)h?M+MXW}mG(tad^%Vq=>ni}bbkJCa#% z>9_FAYLMrvOkh>xy76#=df04Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E34Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E34Tx04UFuk-ba9Kp4iKwn{}S9qb_D5TS}g3q?U3rGj0mLmR=WOL9$GAxXm} zMT)E7;!to9UHlsS4|Ek=6$C*MMBLo{TBOAHnnH`{;2oFu$8&jJ?w$jJS%aBQR|+sK zm*+BRX{oR*g?Y5cM`Gdf|Vguc$c;2=ow7F`K)@GsM|- z*A~1@9AjmrNPI|~;B-LZE1|1CKMOAT{4SWwxmmiK=qZ&tSnXg|<|gqtaojYjtaTo7 zlZa+5=BWhUA8rK7dYPn1|MvND@`dxE2!(h>nYG*00wS=-W5Nq);><|0eOR-=o;AD2gd0C z=;}A^?PvnQ-;%um000SaNLh0L01m(a01m(bYSxJf0002?NklST5JiuO z3_vVuC=kOiN(S-}ED)AR104mfphHyD4riGN5lB+lz5-`~K&2{oQxjUp$y zu7hzLRh_2kuFgfT#+byEcvV%Qm@$^n(_MCI~;hi=Q053HU;E7jDu_OQh002ovPDHLkV1iOwH=qCj literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/mime.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc2b7a9dc992cc74fa2f3d47cf9016b6bea7927 GIT binary patch literal 2599 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 X+$?Rnck>7RSs6AyoV*MEHm`{sum z&vb9UyUA~xu4~m}qp(JsXE~k|j^D2KpUP0VXR7vsCn_4>|JnqHHrT|S6rZYGx##9H zhMhU05YreKguLzDZU0G}FK&4kc*B^pT7AaSjcfPFG2ZSyYP?~B=Z81a95)vSEM%I& qvK_*Huro`hsP)%}{Kh|`7jDVF*p;`$UQWmqWS*z1pUXO@geCx_LUuU- literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/meta.json new file mode 100644 index 0000000000..374d6f5ef4 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/meta.json @@ -0,0 +1,30 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Sprited by TrixxedHeart", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..2bec441eb61cc9ba4b6eb0ef5820d29b739647be GIT binary patch literal 639 zcmV-_0)YLAP)4Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E3}p6RyczgMBMYRIqo2F@s!R zm?+3ey=xRbg8~Ww1rz`ZC;)#GpiS`p;NA}Gh&K?Za$MYC@SlSe&k{6Glj3G)4+RvM ZnQaHYKa&u<0aO40002ovPDHLkV1mVU9ku`f literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/nanotrasen.rsi/wielded-inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..069f7b670c8bf27d3a6d5fa997af36f84f2dbcb2 GIT binary patch literal 637 zcmV-@0)qXCP)4Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E3@R~`2 z_}sgAP5HS&B#;0|AOVm-0`M~d_nZ%^%{Fm>*yAM|1f3q=NY4~>hJ;2s2%aH<1ZHL% XzUe=Uf*dlK00000NkvXXu0mjfv)UkX literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2b989d43776ebc7dc4187556a6bed8ceebdb04ce GIT binary patch literal 675 zcmV;U0$lxxP)4Tx04UFuk-ba9Kp4iKwn{}S9qb_D5TS}g3q?U3rGj0mLmR=WOL9$GAxXm} zMT)E7;!to9UHlsS4|Ek=6$C*MMBLo{TBOAHnnH`{;2oFu$8&jJ?w$jJS%aBQR|+sK zm*+BRX{oR*g?Y5cM`Gdf|Vguc$c;2=ow7F`K)@GsM|- z*A~1@9AjmrNPI|~;B-LZE1|1CKMOAT{4SWwxmmiK=qZ&tSnXg|<|gqtaojYjtaTo7 zlZa+5=BWhUA8rK7dYPn1|MvND@`dxE2!(h>nYG*00wS=-W5Nq);><|0eOR-=o;AD2gd0C z=;}A^?PvnQ-;%um001OVOjJex|Nr6P;nUO8v$L~0IyxsOC*R-S9v&XW#l?<}j?2r- z00024O78an000bhQchF<|NsC0|NsC0|Nj6I-_Fhe000SaNLh0L01mW%pslQoZ=p@@iJ8p+P4*Rl1yN3ZcY`H_ z82PTRZg(eIS(sqU&s2pESiFEL-TI2Zd2S)F} zY4jF^&FBp{&He!M`}YKRU4Yve_`QNCe*$9+%56@5q`L_qx&SO4DV?T11rq=O002ov JPDHLkV1h^-CH?>a literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..37c5475b2a5a4198d489552824098cfe788874ad GIT binary patch literal 2601 zcma)-3v3ic7{?b9c^tG-;)4<;>l%qw_I7XYz1{)s_3)O`_R^M8F|qE=&RrMocDK8G zy=%p2sU#qR3MxXhYVZj~!58w7hqhQ1P-#$O0yHIR5J-WDMC9S@_U^0*(o60!bN}x* z-+cT3W|o92?$5JKv|t#P$AwC((D!uXJ!%B{Tqiaj#;{>eh=D+u3k2}6Do4dQ#IU=+ zdHz{{==1PRiz=(jg7@S%jce=!kjp+f(`dhsKOrX6fl@=ce~0>^HCK zj7zh}?jW#f>1AK|Af~!z%BX!4dR1 zuI1AW!R3#)CVKm}ZYX+W*U$O%??U&RCuT0VRPq|O{gv-tRCo1~-){cp?1tp>o{@Oq z)44l_<>$9h!wuSuBtfR$h=J(3(ytNR45>X=#NA^P!GMU`&+!ME|y(1TG4GVve(%E>{Au zK@7F1u)3w92DHovUV)f4HP7Npvxty@I*+FlaYK^=(jOV5x6PQ=lhAe@-QBd zRfs#R4l7Lt(_#}tAPA28R3XY%mCndO(8y0T=(@sER4SFSrtDT(jZrqQ*Gth1#V{mN zkXo~(^J!Aj?i_$*Fr`ofs;KCqEa3*0kH|^gPoO-^1kpbrm_`#BzA-lGnl4Zr8aU8~ zkbq)n+C$O|$#{)D3~Vl;l$YlsB`s4!R81<)E0oPjQ;9@Qt?9w0f7ZFGTB~VRAXNo5 zIjI5|Y=V-0XLd0qp40}fmDHdyW#$?eq7+KgTrsP^pDPdN^hVWUVnQ+1hBB)XKu)71 z)wub;04NxT3ADI|h_;*-#pT3TP2Yf`im;_JNE+c>sh==bWd#|C0&D(^0Jp;f>=Du} zxNW3^hEdYv1c3CooNlkj<&Dq|nB{Pirt=bj1_zO?B7(q(hjBSQZj#|`Jn8Uwy<`MN zBV;7%5f~l_z#awJ_)1ko-sR(i^D#IA;rq)vpjHqiK~8Cz`5G|+t99NelFj9@({9G;bh%u#!{yB= zYN4tj8yYYhZM883E&z50Lh;BKVuFuBN|9n__H00fye_LXvK;plMjE&glyx@pcE-5u zEE({Ixy=A5nEivBFSCnE_!v&*CVkZP!v4dpZje(_4v=Z8>rww5lw%gFdP-L3SE`kf zc@XGBrCuv6$E`wVl%}iA+>p0_l?dN}c|(XKtIb#DRt*~mO=Zdu7jd(zSsoaVz)xs= z6BLNdBxvBJ7(_=V>YxFccojqQE)cavfj|P@i45&xoFvaXU8E3oI2anZJ#NO4jo0L; zp5j$l97ElOY=L^qv;}^5#)?H*WvT%hKBE~sNjuT8Rm0FM?PYDq)Bm^u?Se9n#KC*> z83zgK;VaAFGY%V;GfY~YRFt>~)j{)>=H>=w(XEC?sLI)k(ir6~TPPvBsOTycwm>Zp_4zASvv8tSa>yPzTB2xS!g*X)ov(g>o4XGHH03kN*Gu6E>}zck>iV_ zx6e7Ss-b;-Nx{^D&9!HwHLLY4!}nHrKEUpp)H=&D?sT1HT;n?1jFd(r}o$X~qgnP|kGt}D8sZcF>l opAWartZ%*P-nZ8F@0oXUk44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`211o(uwT3K2B|NsB~{rf-xQEm5KAax}{e!)ON1_!N`Ux0kh0*}aI1_r*v zAk26?e??C~V=Aa8>M}VKYQ|omxfK zk773dj(^$)3Lh&O_cf(CYd3se;p(VAV~^0WwU5;^uJ;A5o+AA&O@Fp`pnV6>ISihz KelF{r5}E*re_=!b literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/meta.json new file mode 100644 index 0000000000..374d6f5ef4 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/meta.json @@ -0,0 +1,30 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Sprited by TrixxedHeart", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/standard.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..0e2843d85b15093a5c7d5dbcd699f643d169f45b GIT binary patch literal 596 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..7388db8476156c1af127d287657fa04124ddc4c5 GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBufiR<}hF1en@VuvsV@O5Z+glsC4jBkEJPe4j`o_s}^yJ3o z2}h4!41baR%VJ-b&<;JmOV{p9{QQsKYtqtkTMvyVLO{Jh(6E0(aotq+X}5i+$Icb6 zEV2J?XkSw%HR&`{$k}SEU)oMz=j;_t^xZeNC$UxkfYLp_!=^tsv8Eg`-){JW|KjJu z-dKn^3=D>~-#Dk-W9+UzEVTH@q||DY-yAVtG&17mn%3*4Z)HunC3gDAmZU;UE#+++ zY!+-u+Q^#1^Ljbc8~(j#zC<32I( A2><{9 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/meta.json new file mode 100644 index 0000000000..8bfbd3140d --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/meta.json @@ -0,0 +1,30 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Sprited by TrixxedHeart, inspiration from ps3moira#9488 on discord", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/offset_canes/wood.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..c7cd397457ef5c05ff1731ff8ff5959295ff143d GIT binary patch literal 632 zcmV-;0*C#HP)4Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E3fzrGg$0001h z@O)gl>v7Yi;b6ZFUEkVW*4Gbu&B! SL&?Vg00004Tx04UFukxeK>Q5?m8#!RGVht+M#vs821rCRAy{LuSs&3oi%{tmSix zcZDP7lAaPi6Yg^4g2E3^`$p7pwRO z000000002UoOb#D|4=?)Y98Pj^>*Ivc`uLfN)BO?UuFirdA58&ssR8fO9)r2W-~m; S_?zqi0000