Skip to content

Commit

Permalink
tail stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
Greenjoe12345 committed Jul 23, 2023
1 parent b3b59c5 commit 026a6e7
Show file tree
Hide file tree
Showing 15 changed files with 236 additions and 6 deletions.
37 changes: 37 additions & 0 deletions code/game/objects/items/weapons/storage/backpack.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,34 @@
var/side = 0 //0 = right, 1 = left
drop_sound = 'sound/items/drop/backpack.ogg'
pickup_sound = 'sound/items/pickup/backpack.ogg'
var/list/species_restricted = null

/obj/item/storage/backpack/mob_can_equip(M as mob, slot, disable_warning = FALSE)

//if we can't equip the item anyway, don't bother with species_restricted (cuts down on spam)
if (!..())
return 0

if(LAZYLEN(species_restricted) && istype(M,/mob/living/carbon/human))
var/exclusive = null
var/wearable = null
var/mob/living/carbon/human/H = M

if("exclude" in species_restricted)
exclusive = 1

if(H.species)
if(exclusive)
if(!(H.species.get_bodytype(H) in species_restricted))
wearable = 1
else
if(H.species.get_bodytype(H) in species_restricted)
wearable = 1

if(!wearable && !(slot in list(slot_l_store, slot_r_store, slot_s_store)))
to_chat(H, "<span class='danger'>Your species cannot wear [src].</span>")
return 0
return 1


/obj/item/storage/backpack/equipped(var/mob/user, var/slot)
Expand Down Expand Up @@ -554,3 +582,12 @@
Unlike the show claims, it is not a phoron-enhanced satchel of holding with plot-relevant content."
icon = 'icons/obj/clothing/ranger.dmi'
icon_state = "ranger_satchel"

/obj/item/storage/backpack/teshbag
name = "tailbags"
gender = PLURAL
desc = "A pair of small, connected bags, designed to strap around the base of a teshari's tail."
icon_state = "teshbag"
species_restricted = list(SPECIES_TESHARI)
max_w_class = ITEMSIZE_NORMAL
max_storage_space = ITEMSIZE_COST_NORMAL * 5
116 changes: 116 additions & 0 deletions code/modules/client/preference_setup/loadout/loadout_xeno.dm
Original file line number Diff line number Diff line change
Expand Up @@ -338,3 +338,119 @@
/datum/gear/shoes/teshwrap/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshbag
display_name = "Teshari tailbags"
path = /obj/item/storage/backpack/teshbag
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI
cost = 3

/datum/gear/accessory/teshtailwrap
display_name = "Teshari tail wrap"
path = /obj/item/clothing/accessory/teshtail/wrap
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshtailwrap/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshtailwraplong
display_name = "Teshari tail wrap, long"
path = /obj/item/clothing/accessory/teshtail/wrap/long
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshtailwraplong/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshtailbells
display_name = "Teshari tail bells"
path = /obj/item/clothing/accessory/teshtail/bells
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshbangle
display_name = "Teshari tail bangle, base"
path = /obj/item/clothing/accessory/teshtail/bangle
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI
cost = 0 //for these, so you can select all three or mix and match without taking three points.

/datum/gear/accessory/teshbangle/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshbangle2
display_name = "Teshari tail bangle, middle"
path = /obj/item/clothing/accessory/teshtail/bangle/middle
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI
cost = 0

/datum/gear/accessory/teshbangle2/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshbangle3
display_name = "Teshari tail bangle, end"
path = /obj/item/clothing/accessory/teshtail/bangle/end
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI
cost = 0

/datum/gear/accessory/teshbangle3/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshplume
display_name = "Teshari artifical tailplume"
path = /obj/item/clothing/accessory/teshtail/plumage
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshplume/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshchains
display_name = "Teshari tail chains"
path = /obj/item/clothing/accessory/teshtail/chains
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshchains/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshchainslong
display_name = "Teshari tail chains, long"
path = /obj/item/clothing/accessory/teshtail/chains/long
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshchainslong/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshchainsdangle
display_name = "Teshari tail chains, dangling"
path = /obj/item/clothing/accessory/teshtail/chains/dangle
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshchainsdangle/New()
..()
gear_tweaks += gear_tweak_free_color_choice

/datum/gear/accessory/teshchainslongdangle
display_name = "Teshari tail chains, long and dangling"
path = /obj/item/clothing/accessory/teshtail/chains/longdangle
sort_category = "Xenowear"
whitelisted = SPECIES_TESHARI

/datum/gear/accessory/teshchainslongdangle/New()
..()
gear_tweaks += gear_tweak_free_color_choice
6 changes: 0 additions & 6 deletions code/modules/clothing/under/accessories/accessory.dm
Original file line number Diff line number Diff line change
Expand Up @@ -345,12 +345,6 @@
name = "striped blue scarf"
icon_state = "stripedbluescarf"

/obj/item/clothing/accessory/scarf/teshari/neckscarf
name = "small neckscarf"
desc = "a neckscarf that is too small for a human's neck"
icon_state = "tesh_neckscarf"
species_restricted = list(SPECIES_TESHARI)

//bracelets

/obj/item/clothing/accessory/bracelet
Expand Down
82 changes: 82 additions & 0 deletions code/modules/clothing/under/accessories/xeno/teshari.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
/obj/item/clothing/accessory/scarf/teshari/neckscarf
name = "small neckscarf"
desc = "a neckscarf that is too small for a human's neck"
icon_state = "tesh_neckscarf"
species_restricted = list(SPECIES_TESHARI)

/obj/item/clothing/accessory/teshtail
name = "teshari tail accessory master item"
desc = "you shouldn't see this!"
species_restricted = list(SPECIES_TESHARI)

/obj/item/clothing/accessory/teshtail/wrap
name = "teshari tail wrap"
desc = "A strip of cloth to decorate a teshari's tail."
icon_state = "tailwrap"

/obj/item/clothing/accessory/teshtail/wrap/long
name = " long teshari tail wrap"
icon_state = "tailwrap_long"

/obj/item/clothing/accessory/teshtail/bells
name = "teshari tail bells"
desc = "A set of lightweight, jangly tail bells."
icon_state = "tailbells"
var/static/list/dingaling_sound = list(
'sound/misc/dingaling1.ogg',
'sound/misc/dingaling2.ogg',
'sound/misc/dingaling3.ogg',
'sound/misc/dingaling4.ogg'
)
var/tmp/dingaling_volume = 260
var/tmp/dingaling_chance = 30
var/tmp/dingaling_vary = FALSE

/obj/item/clothing/accessory/teshtail/bells/is_mob_movement_sensitive()
return TRUE

/obj/item/clothing/accessory/teshtail/bells/handle_movement()
..()
if(dingaling_sound && prob(dingaling_chance))
if(islist(dingaling_sound) && length(dingaling_sound))
playsound(get_turf(src), pick(dingaling_sound), dingaling_volume, dingaling_vary)
else
playsound(get_turf(src), dingaling_sound, dingaling_volume, dingaling_vary)

/obj/item/clothing/accessory/teshtail/bangle
name = "teshari tail bangle, base"
desc = "A loose fitting bangle to decorate a teshari's tail, this one sits near the base of the tail."
icon_state = "tailbangle1"

/obj/item/clothing/accessory/teshtail/bangle/middle
name = "teshari tail bangle, middle"
desc = "A loose fitting bangle to decorate a teshari's tail, this one sits around the middle of the tail."
icon_state = "tailbangle2"

/obj/item/clothing/accessory/teshtail/bangle/end
name = "teshari tail bangle, end"
desc = "A loose fitting bangle to decorate a teshari's tail, this one sits towards the end of the tail."
icon_state = "tailbangle3"

/obj/item/clothing/accessory/teshtail/chains
name = "teshari tail chains"
desc = "Small connected chains for decorating a teshari's tail."
icon_state = "tailchain"
gender = PLURAL

/obj/item/clothing/accessory/teshtail/chains/dangle
name = "dangling teshari tail chains"
icon_state = "tailchain_dangle"

/obj/item/clothing/accessory/teshtail/chains/long
name = "long teshari tail chains"
icon_state = "tailchain_long"

/obj/item/clothing/accessory/teshtail/chains/longdangle
name = "long dangling teshari tail chains"
icon_state = "tailchain_longdangle"

/obj/item/clothing/accessory/teshtail/plumage
name = "artifical tailplume"
desc = "A set of tied together tail feathers for a teshari that has lost their real ones. Often used with prosthetic tails."
icon_state = "tailplume"
Binary file modified icons/mob/items/lefthand_storage.dmi
Binary file not shown.
Binary file modified icons/mob/items/righthand_storage.dmi
Binary file not shown.
Binary file modified icons/mob/species/teshari/back.dmi
Binary file not shown.
Binary file modified icons/mob/species/teshari/ties.dmi
Binary file not shown.
Binary file modified icons/obj/clothing/backpack.dmi
Binary file not shown.
Binary file modified icons/obj/clothing/ties.dmi
Binary file not shown.
1 change: 1 addition & 0 deletions polaris.dme
Original file line number Diff line number Diff line change
Expand Up @@ -1753,6 +1753,7 @@
#include "code\modules\clothing\under\accessories\torch.dm"
#include "code\modules\clothing\under\accessories\crafted\poncho.dm"
#include "code\modules\clothing\under\accessories\temperature\poncho.dm"
#include "code\modules\clothing\under\accessories\xeno\teshari.dm"
#include "code\modules\clothing\under\jobs\civilian.dm"
#include "code\modules\clothing\under\jobs\engineering.dm"
#include "code\modules\clothing\under\jobs\medsci.dm"
Expand Down
Binary file added sound/misc/dingaling1.ogg
Binary file not shown.
Binary file added sound/misc/dingaling2.ogg
Binary file not shown.
Binary file added sound/misc/dingaling3.ogg
Binary file not shown.
Binary file added sound/misc/dingaling4.ogg
Binary file not shown.

0 comments on commit 026a6e7

Please sign in to comment.