mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-12 23:53:47 +01:00
Merge remote-tracking branch 'upstream/master' into ports-tailoring
This commit is contained in:
@@ -210,6 +210,7 @@
|
||||
var/datum/objective/KillDaCrew = new /datum/objective
|
||||
KillDaCrew.owner = S.mind
|
||||
KillDaCrew.explanation_text = "[objective_verb] everyone else while you're at it."
|
||||
KillDaCrew.completed = TRUE
|
||||
S.mind.objectives += KillDaCrew
|
||||
to_chat(S, "<B>Objective #[1]</B>: [KillDaWiz.explanation_text]")
|
||||
to_chat(S, "<B>Objective #[2]</B>: [KillDaCrew.explanation_text]")
|
||||
@@ -219,7 +220,8 @@
|
||||
desc = "A magically infused bottle of clown love, distilled from \
|
||||
countless hugging attacks. Used in funny rituals to attract \
|
||||
adorable creatures."
|
||||
color = "#FF69B4" // HOT PINK
|
||||
icon = 'icons/obj/wizard.dmi'
|
||||
icon_state = "vialtickles"
|
||||
veil_msg = "<span class='warning'>You sense an adorable presence \
|
||||
lurking just beyond the veil...</span>"
|
||||
objective_verb = "Hug and tickle"
|
||||
@@ -278,6 +280,7 @@
|
||||
var/datum/objective/KillDaCrew = new /datum/objective
|
||||
KillDaCrew.owner = M.mind
|
||||
KillDaCrew.explanation_text = "[objective_verb] everyone and everything else while you're at it."
|
||||
KillDaCrew.completed = TRUE
|
||||
M.mind.objectives += KillDaCrew
|
||||
to_chat(M, "<B>Objective #[1]</B>: [KillDaWiz.explanation_text]")
|
||||
to_chat(M, "<B>Objective #[2]</B>: [KillDaCrew.explanation_text]")
|
||||
|
||||
@@ -21,12 +21,4 @@
|
||||
|
||||
/datum/gear/lipstick/lime
|
||||
display_name = "lipstick, lime"
|
||||
path = /obj/item/lipstick/lime
|
||||
|
||||
/datum/gear/monocle
|
||||
display_name = "monocle"
|
||||
path = /obj/item/clothing/glasses/monocle
|
||||
|
||||
/datum/gear/sunglasses
|
||||
display_name = "cheap sunglasses"
|
||||
path = /obj/item/clothing/glasses/sunglasses_fake
|
||||
path = /obj/item/lipstick/lime
|
||||
@@ -18,12 +18,10 @@
|
||||
/datum/gear/donor/furcape
|
||||
display_name = "Fur Cape"
|
||||
path = /obj/item/clothing/suit/furcape
|
||||
cost = 2
|
||||
|
||||
/datum/gear/donor/furcoat
|
||||
display_name = "Fur Coat"
|
||||
path = /obj/item/clothing/suit/furcoat
|
||||
cost = 2
|
||||
|
||||
/datum/gear/donor/kamina
|
||||
display_name = "Spiky Orange-tinted Shades"
|
||||
@@ -33,10 +31,6 @@
|
||||
display_name = "Spiky Green-tinted Shades"
|
||||
path = /obj/item/clothing/glasses/fluff/kamina/green
|
||||
|
||||
/datum/gear/donor/hipster
|
||||
display_name = "Hipster Glasses"
|
||||
path = /obj/item/clothing/glasses/regular/hipster
|
||||
|
||||
/datum/gear/donor/threedglasses
|
||||
display_name = "Threed Glasses"
|
||||
path = /obj/item/clothing/glasses/threedglasses
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
/datum/gear/glasses
|
||||
subtype_path = /datum/gear/glasses
|
||||
slot = slot_glasses
|
||||
sort_category = "Glasses"
|
||||
|
||||
/datum/gear/glasses/sunglasses
|
||||
display_name = "cheap sunglasses"
|
||||
path = /obj/item/clothing/glasses/sunglasses_fake
|
||||
|
||||
/datum/gear/glasses/eyepatch
|
||||
display_name = "Eyepatch"
|
||||
path = /obj/item/clothing/glasses/eyepatch
|
||||
|
||||
/datum/gear/glasses/hipster
|
||||
display_name = "Hipster glasses"
|
||||
path = /obj/item/clothing/glasses/regular/hipster
|
||||
|
||||
/datum/gear/glasses/monocle
|
||||
display_name = "Monocle"
|
||||
path = /obj/item/clothing/glasses/monocle
|
||||
|
||||
/datum/gear/glasses/prescription
|
||||
display_name = "Prescription glasses"
|
||||
path = /obj/item/clothing/glasses/regular
|
||||
@@ -0,0 +1,8 @@
|
||||
/datum/gear/gloves
|
||||
subtype_path = /datum/gear/gloves
|
||||
slot = slot_gloves
|
||||
sort_category = "Gloves"
|
||||
|
||||
/datum/gear/gloves/fingerless
|
||||
display_name = "Fingerless Gloves"
|
||||
path = /obj/item/clothing/gloves/fingerless
|
||||
@@ -27,25 +27,32 @@
|
||||
|
||||
/datum/gear/shoes/cowboyboots
|
||||
display_name = "cowboy boots, brown"
|
||||
cost = 1
|
||||
path = /obj/item/clothing/shoes/cowboy
|
||||
|
||||
/datum/gear/shoes/cowboyboots_black
|
||||
display_name = "cowboy boots, black"
|
||||
cost = 1
|
||||
path = /obj/item/clothing/shoes/cowboy/black
|
||||
|
||||
/datum/gear/shoes/cowboyboots/white
|
||||
display_name = "cowboy boots, white"
|
||||
cost = 1
|
||||
path = /obj/item/clothing/shoes/cowboy/white
|
||||
|
||||
/datum/gear/shoes/cowboyboots/pink
|
||||
display_name = "cowboy boots, pink"
|
||||
cost = 1
|
||||
path = /obj/item/clothing/shoes/cowboy/pink
|
||||
|
||||
/datum/gear/shoes/laceup
|
||||
display_name = "laceup shoes"
|
||||
cost = 1
|
||||
path = /obj/item/clothing/shoes/laceup
|
||||
|
||||
/datum/gear/shoes/blackshoes
|
||||
display_name = "Black shoes"
|
||||
path = /obj/item/clothing/shoes/black
|
||||
|
||||
/datum/gear/shoes/brownshoes
|
||||
display_name = "Brown shoes"
|
||||
path = /obj/item/clothing/shoes/brown
|
||||
|
||||
/datum/gear/shoes/whiteshoes
|
||||
display_name = "White shoes"
|
||||
path = /obj/item/clothing/shoes/white
|
||||
@@ -1,7 +1,6 @@
|
||||
/datum/gear/suit
|
||||
subtype_path = /datum/gear/suit
|
||||
slot = slot_wear_suit
|
||||
cost = 2
|
||||
sort_category = "External Wear"
|
||||
|
||||
//WINTER COATS
|
||||
@@ -105,6 +104,10 @@
|
||||
path = /obj/item/clothing/suit/armor/secjacket
|
||||
allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer", "Security Pod Pilot")
|
||||
|
||||
/datum/gear/suit/ianshirt
|
||||
display_name = "Ian Shirt"
|
||||
path = /obj/item/clothing/suit/ianshirt
|
||||
|
||||
/datum/gear/suit/poncho
|
||||
display_name = "poncho, classic"
|
||||
path = /obj/item/clothing/suit/poncho
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
/datum/gear/uniform
|
||||
subtype_path = /datum/gear/uniform
|
||||
slot = slot_w_uniform
|
||||
cost = 2
|
||||
sort_category = "Uniforms and Casual Dress"
|
||||
|
||||
/datum/gear/uniform/skirt
|
||||
|
||||
@@ -444,7 +444,8 @@ BLIND // can't see anything
|
||||
slowdown = SHOES_SLOWDOWN
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/shoes.dmi'
|
||||
"Vox" = 'icons/mob/species/vox/shoes.dmi',
|
||||
"Drask" = 'icons/mob/species/drask/shoes.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/shoes/attackby(obj/item/I, mob/user, params)
|
||||
@@ -595,7 +596,7 @@ BLIND // can't see anything
|
||||
min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT
|
||||
heat_protection = HEAD
|
||||
max_heat_protection_temperature = SPACE_HELM_MAX_TEMP_PROTECT
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
flash_protect = 2
|
||||
strip_delay = 50
|
||||
put_on_delay = 50
|
||||
@@ -623,7 +624,7 @@ BLIND // can't see anything
|
||||
put_on_delay = 80
|
||||
burn_state = FIRE_PROOF
|
||||
hide_tail_by_species = null
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
|
||||
//Under clothing
|
||||
/obj/item/clothing/under
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
actions_types = list(/datum/action/item_action/toggle_helmet_light)
|
||||
|
||||
//Species-specific stuff.
|
||||
species_restricted = list("exclude","Diona","Wryn")
|
||||
species_restricted = list("exclude","Wryn")
|
||||
sprite_sheets = list(
|
||||
"Unathi" = 'icons/mob/species/unathi/helmet.dmi',
|
||||
"Tajaran" = 'icons/mob/species/tajaran/helmet.dmi',
|
||||
@@ -93,9 +93,10 @@
|
||||
var/obj/item/clothing/head/helmet/space/hardsuit/helmet
|
||||
actions_types = list(/datum/action/item_action/toggle_helmet)
|
||||
var/helmettype = /obj/item/clothing/head/helmet/space/hardsuit
|
||||
var/obj/item/tank/jetpack/suit/jetpack = null
|
||||
|
||||
hide_tail_by_species = list("Vox" , "Vulpkanin" , "Unathi" , "Tajaran")
|
||||
species_restricted = list("exclude","Diona","Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
sprite_sheets = list(
|
||||
"Unathi" = 'icons/mob/species/unathi/suit.dmi',
|
||||
"Tajaran" = 'icons/mob/species/tajaran/suit.dmi',
|
||||
@@ -112,10 +113,59 @@
|
||||
"Vulpkanin" = 'icons/obj/clothing/species/vulpkanin/suits.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/New()
|
||||
if(jetpack && ispath(jetpack))
|
||||
jetpack = new jetpack(src)
|
||||
..()
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/attack_self(mob/user)
|
||||
user.changeNext_move(CLICK_CD_MELEE)
|
||||
..()
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/attackby(obj/item/I, mob/user, params)
|
||||
if(istype(I, /obj/item/tank/jetpack/suit))
|
||||
if(jetpack)
|
||||
to_chat(user, "<span class='warning'>[src] already has a jetpack installed.</span>")
|
||||
return
|
||||
if(src == user.get_item_by_slot(slot_wear_suit)) //Make sure the player is not wearing the suit before applying the upgrade.
|
||||
to_chat(user, "<span class='warning'>You cannot install the upgrade to [src] while wearing it.</span>")
|
||||
return
|
||||
|
||||
if(user.unEquip(I))
|
||||
I.forceMove(src)
|
||||
jetpack = I
|
||||
to_chat(user, "<span class='notice'>You successfully install the jetpack into [src].</span>")
|
||||
return
|
||||
else if(isscrewdriver(I))
|
||||
if(!jetpack)
|
||||
to_chat(user, "<span class='warning'>[src] has no jetpack installed.</span>")
|
||||
return
|
||||
if(src == user.get_item_by_slot(slot_wear_suit))
|
||||
to_chat(user, "<span class='warning'>You cannot remove the jetpack from [src] while wearing it.</span>")
|
||||
return
|
||||
|
||||
jetpack.turn_off(user)
|
||||
jetpack.forceMove(drop_location())
|
||||
jetpack = null
|
||||
to_chat(user, "<span class='notice'>You successfully remove the jetpack from [src].</span>")
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/equipped(mob/user, slot)
|
||||
..()
|
||||
if(jetpack)
|
||||
if(slot == slot_wear_suit)
|
||||
for(var/X in jetpack.actions)
|
||||
var/datum/action/A = X
|
||||
A.Grant(user)
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/dropped(mob/user)
|
||||
..()
|
||||
if(jetpack)
|
||||
for(var/X in jetpack.actions)
|
||||
var/datum/action/A = X
|
||||
A.Remove(user)
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/item_action_slot_check(slot)
|
||||
if(slot == slot_wear_suit) //we only give the mob the ability to toggle the helmet if he's wearing the hardsuit.
|
||||
return 1
|
||||
@@ -178,6 +228,7 @@
|
||||
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection
|
||||
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
|
||||
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/elite
|
||||
jetpack = /obj/item/tank/jetpack/suit
|
||||
|
||||
//Mining hardsuit
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/mining
|
||||
@@ -291,6 +342,7 @@
|
||||
armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50)
|
||||
allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword, /obj/item/restraints/handcuffs, /obj/item/tank)
|
||||
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi
|
||||
jetpack = /obj/item/tank/jetpack/suit
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/syndi/update_icon()
|
||||
icon_state = "hardsuit[on]-[item_color]"
|
||||
@@ -438,6 +490,7 @@
|
||||
icon_state = "hardsuit-hos"
|
||||
armor = list(melee = 45, bullet = 25, laser = 30, energy = 10, bomb = 25, bio = 100, rad = 50)
|
||||
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos
|
||||
jetpack = /obj/item/tank/jetpack/suit
|
||||
sprite_sheets = null
|
||||
|
||||
//Singuloth armor
|
||||
@@ -522,6 +575,7 @@
|
||||
allowed = list(/obj/item/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword/saber,/obj/item/restraints/handcuffs,/obj/item/tank)
|
||||
slowdown = 0
|
||||
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi
|
||||
jetpack = /obj/item/tank/jetpack/suit
|
||||
sprite_sheets = list(
|
||||
"Unathi" = 'icons/mob/species/unathi/suit.dmi',
|
||||
"Tajaran" = 'icons/mob/species/tajaran/suit.dmi',
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
flags_inv = HIDEFACE
|
||||
permeability_coefficient = 0.01
|
||||
armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/helmet.dmi',
|
||||
@@ -31,7 +31,7 @@
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
allowed = list(/obj/item/tank, /obj/item/flashlight,/obj/item/gun/energy, /obj/item/gun/projectile, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton,/obj/item/restraints/handcuffs)
|
||||
armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/suit.dmi'
|
||||
@@ -72,7 +72,7 @@
|
||||
allowed = list(/obj/item/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/restraints/handcuffs,/obj/item/tank,/obj/item/kitchen/knife/combat)
|
||||
armor = list(melee = 40, bullet = 30, laser = 30, energy = 30, bomb = 50, bio = 90, rad = 20)
|
||||
strip_delay = 120
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/suit.dmi'
|
||||
@@ -159,7 +159,7 @@
|
||||
icon_state = "paramedic-eva-helmet"
|
||||
item_state = "paramedic-eva-helmet"
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/helmet.dmi',
|
||||
@@ -180,7 +180,7 @@
|
||||
item_state = "paramedic-eva"
|
||||
desc = "A brand new paramedic EVA suit. The nitrile seems a bit too thin to be space proof. Used for retrieving bodies in space."
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Vox" = 'icons/mob/species/vox/suit.dmi',
|
||||
@@ -200,7 +200,7 @@
|
||||
item_state = "s_suit"
|
||||
desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies."
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Tajaran" = 'icons/mob/species/tajaran/suit.dmi',
|
||||
@@ -223,7 +223,7 @@
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
|
||||
flash_protect = 0
|
||||
species_restricted = list("exclude", "Diona", "Wryn")
|
||||
species_restricted = list("exclude", "Wryn")
|
||||
|
||||
sprite_sheets = list(
|
||||
"Tajaran" = 'icons/mob/species/tajaran/helmet.dmi',
|
||||
@@ -244,7 +244,7 @@
|
||||
desc = ". . ."
|
||||
icon_state = "spacemimehelmet"
|
||||
item_state = "spacemimehelmet"
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
sprite_sheets = null
|
||||
sprite_sheets_obj = null
|
||||
|
||||
@@ -254,7 +254,7 @@
|
||||
desc = ". . ."
|
||||
icon_state = "spacemime_suit"
|
||||
item_state = "spacemime_items"
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
sprite_sheets = null
|
||||
sprite_sheets_obj = null
|
||||
|
||||
@@ -264,7 +264,7 @@
|
||||
desc = "An EVA helmet specifically designed for the clown. SPESSHONK!"
|
||||
icon_state = "clownhelmet"
|
||||
item_state = "clownhelmet"
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
sprite_sheets = null
|
||||
sprite_sheets_obj = null
|
||||
|
||||
@@ -274,7 +274,6 @@
|
||||
desc = "An EVA suit specifically designed for the clown. SPESSHONK!"
|
||||
icon_state = "spaceclown_suit"
|
||||
item_state = "spaceclown_items"
|
||||
species_restricted = list("exclude","Diona","Vox","Wryn")
|
||||
species_restricted = list("exclude","Vox","Wryn")
|
||||
sprite_sheets = null
|
||||
sprite_sheets_obj = null
|
||||
|
||||
@@ -758,6 +758,7 @@
|
||||
allowed = list(/obj/item/flashlight,/obj/item/tank/emergency_oxygen,/obj/item/toy,/obj/item/storage/fancy/cigarettes,/obj/item/lighter)
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||
cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
||||
actions_types = list(/datum/action/item_action/zipper)
|
||||
adjust_flavour = "unzip"
|
||||
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
/obj/item/clothing/suit/space/hardsuit/Destroy()
|
||||
if(helmet)
|
||||
helmet.suit = null
|
||||
qdel(helmet)
|
||||
QDEL_NULL(helmet)
|
||||
QDEL_NULL(jetpack)
|
||||
return ..()
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/Destroy()
|
||||
|
||||
@@ -1212,16 +1212,16 @@
|
||||
|
||||
//////////// Sets ////////////
|
||||
// Fox P McCloud: Fox McCloud
|
||||
/obj/item/clothing/suit/jacket/fluff/fox
|
||||
/obj/item/clothing/suit/storage/fox
|
||||
name = "Aeronautics Jacket"
|
||||
desc = "An aviator styled jacket made from a peculiar material; this one seems very old."
|
||||
icon = 'icons/obj/custom_items.dmi'
|
||||
icon_state = "fox_jacket"
|
||||
item_state = "fox_jacket"
|
||||
ignore_suitadjust = TRUE
|
||||
actions_types = list()
|
||||
adjust_flavour = null
|
||||
sprite_sheets = null
|
||||
allowed = list(/obj/item/flashlight, /obj/item/tank/emergency_oxygen, /obj/item/toy, /obj/item/storage/fancy/cigarettes, /obj/item/lighter, /obj/item/gun/projectile/automatic/pistol, /obj/item/gun/projectile/revolver, /obj/item/gun/projectile/revolver/detective)
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||
cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
||||
|
||||
/obj/item/clothing/under/fluff/fox
|
||||
name = "Aeronautics Jumpsuit"
|
||||
@@ -1232,6 +1232,12 @@
|
||||
item_color = "fox_suit"
|
||||
displays_id = FALSE //still appears on examine; this is pure fluff.
|
||||
|
||||
/obj/item/clothing/suit/storage/fox/miljacket_desert
|
||||
name = "rugged military jacket"
|
||||
desc = "A rugged brown military jacket with a stylized 'A' embroidered on the back. It seems very old, yet is in near mint condition. Has a tag on the inside collar signed 'Fox McCloud'."
|
||||
icon_state = "fox_coat"
|
||||
item_color = "fox_coat"
|
||||
|
||||
/obj/item/toy/plushie/fluff/fox
|
||||
name = "orange fox plushie"
|
||||
desc = "A cute, soft, fuzzy, fluffy, and cuddly plushie. This has a small tag on it that is signed 'Fox McCloud'."
|
||||
@@ -1262,12 +1268,6 @@
|
||||
/obj/item/toy/plushie/fluff/fox/ui_action_click()
|
||||
change_color()
|
||||
|
||||
/obj/item/clothing/suit/jacket/miljacket/desert/fox
|
||||
name = "rugged military jacket"
|
||||
desc = "A rugged brown military jacket with a stylized 'A' embroidered on the back. It seems very old, yet is in near mint condition. Has a tag on the inside collar signed 'Fox McCloud'."
|
||||
icon = 'icons/obj/custom_items.dmi'
|
||||
icon_state = "fox_coat"
|
||||
item_color = "fox_coat"
|
||||
|
||||
// TheFlagbearer: Willow Walker
|
||||
/obj/item/clothing/under/fluff/arachno_suit
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
make_podman = 0
|
||||
|
||||
if(make_podman) //all conditions met!
|
||||
var/mob/living/carbon/human/diona/podman = new /mob/living/carbon/human/diona(parent.loc)
|
||||
var/mob/living/carbon/human/pod_diona/podman = new /mob/living/carbon/human/pod_diona(parent.loc)
|
||||
if(realName)
|
||||
podman.real_name = realName
|
||||
mind.transfer_to(podman)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
new /datum/data/mining_equipment("Lazarus Injector", /obj/item/lazarus_injector, 1000),
|
||||
new /datum/data/mining_equipment("Silver Pickaxe", /obj/item/pickaxe/silver, 1000),
|
||||
new /datum/data/mining_equipment("Mining Conscription Kit", /obj/item/storage/backpack/duffel/mining_conscript, 1500),
|
||||
new /datum/data/mining_equipment("Jetpack", /obj/item/tank/jetpack/carbondioxide/mining, 2000),
|
||||
new /datum/data/mining_equipment("Jetpack Upgrade", /obj/item/tank/jetpack/suit, 2000),
|
||||
new /datum/data/mining_equipment("Mining Hardsuit", /obj/item/clothing/suit/space/hardsuit/mining, 2000),
|
||||
new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/pickaxe/diamond, 2000),
|
||||
new /datum/data/mining_equipment("Super Resonator", /obj/item/resonator/upgraded, 2500),
|
||||
|
||||
@@ -44,8 +44,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/miner/New()
|
||||
..()
|
||||
// new /obj/item/stack/sheet/mineral/sandbags(src, 5)
|
||||
// new /obj/item/storage/box/emptysandbags(src)
|
||||
new /obj/item/stack/sheet/mineral/sandbags(src, 5)
|
||||
new /obj/item/storage/box/emptysandbags(src)
|
||||
new /obj/item/shovel(src)
|
||||
new /obj/item/pickaxe/mini(src)
|
||||
new /obj/item/radio/headset/headset_cargo/mining(src)
|
||||
|
||||
@@ -106,6 +106,9 @@
|
||||
/mob/living/carbon/human/diona/Initialize(mapload)
|
||||
..(mapload, /datum/species/diona)
|
||||
|
||||
/mob/living/carbon/human/pod_diona/Initialize(mapload)
|
||||
..(mapload, /datum/species/diona/pod)
|
||||
|
||||
/mob/living/carbon/human/machine/Initialize(mapload)
|
||||
..(mapload, /datum/species/machine)
|
||||
|
||||
|
||||
@@ -11,10 +11,11 @@
|
||||
|
||||
//Do we have a working jetpack?
|
||||
var/obj/item/tank/jetpack/thrust
|
||||
if(istype(back,/obj/item/tank/jetpack))
|
||||
if(istype(back, /obj/item/tank/jetpack))
|
||||
thrust = back
|
||||
else if(istype(s_store,/obj/item/tank/jetpack))
|
||||
thrust = s_store
|
||||
else if(istype(wear_suit, /obj/item/clothing/suit/space/hardsuit))
|
||||
var/obj/item/clothing/suit/space/hardsuit/C = wear_suit
|
||||
thrust = C.jetpack
|
||||
else if(istype(back,/obj/item/rig))
|
||||
var/obj/item/rig/rig = back
|
||||
for(var/obj/item/rig_module/maneuvering_jets/module in rig.installed_modules)
|
||||
|
||||
@@ -7,21 +7,11 @@
|
||||
speech_sounds = list('sound/voice/dionatalk1.ogg') //Credit https://www.youtube.com/watch?v=ufnvlRjsOTI [0:13 - 0:16]
|
||||
speech_chance = 20
|
||||
unarmed_type = /datum/unarmed_attack/diona
|
||||
//primitive_form = "Nymph"
|
||||
slowdown = 5
|
||||
remains_type = /obj/effect/decal/cleanable/ash
|
||||
|
||||
|
||||
warning_low_pressure = 50
|
||||
hazard_low_pressure = -1
|
||||
|
||||
cold_level_1 = 50
|
||||
cold_level_2 = -1
|
||||
cold_level_3 = -1
|
||||
|
||||
heat_level_1 = 300
|
||||
heat_level_2 = 340
|
||||
heat_level_3 = 400
|
||||
burn_mod = 1.25
|
||||
heatmod = 1.5
|
||||
var/pod = FALSE //did they come from a pod? If so, they're stronger than normal Diona.
|
||||
|
||||
blurb = "Commonly referred to (erroneously) as 'plant people', the Dionaea are a strange space-dwelling collective \
|
||||
species hailing from Epsilon Ursae Minoris. Each 'diona' is a cluster of numerous cat-sized organisms called nymphs; \
|
||||
@@ -31,16 +21,14 @@
|
||||
even the simplest concepts of other minds. Their alien physiology allows them survive happily off a diet of nothing but light, \
|
||||
water and other radiation."
|
||||
|
||||
species_traits = list(NO_BREATHE, RADIMMUNE, IS_PLANT, NO_BLOOD, NO_PAIN)
|
||||
dies_at_threshold = TRUE
|
||||
species_traits = list(IS_PLANT)
|
||||
clothing_flags = HAS_SOCKS
|
||||
default_hair_colour = "#000000"
|
||||
has_gender = FALSE
|
||||
dietflags = 0 //Diona regenerate nutrition in light and water, no diet necessary
|
||||
taste_sensitivity = TASTE_SENSITIVITY_NO_TASTE
|
||||
dietflags = DIET_HERB //Diona regenerate nutrition in light and water, no diet necessary, but if they must, they eat other plants *scream
|
||||
taste_sensitivity = TASTE_SENSITIVITY_DULL
|
||||
skinned_type = /obj/item/stack/sheet/wood
|
||||
|
||||
body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not
|
||||
blood_color = "#004400"
|
||||
flesh_color = "#907E4A"
|
||||
butt_sprite = "diona"
|
||||
@@ -49,6 +37,7 @@
|
||||
|
||||
has_organ = list(
|
||||
"nutrient channel" = /obj/item/organ/internal/liver/diona,
|
||||
"respiratory vacuoles" = /obj/item/organ/internal/lungs/diona,
|
||||
"neural strata" = /obj/item/organ/internal/heart/diona,
|
||||
"receptor node" = /obj/item/organ/internal/eyes/diona, //Default darksight of 2.
|
||||
"gas bladder" = /obj/item/organ/internal/brain/diona,
|
||||
@@ -85,29 +74,47 @@
|
||||
..()
|
||||
H.gender = NEUTER
|
||||
|
||||
/datum/species/diona/handle_life(mob/living/carbon/human/H)
|
||||
H.radiation = Clamp(H.radiation, 0, 100) //We have to clamp this first, then decrease it, or there's a few edge cases of massive heals if we clamp and decrease at the same time.
|
||||
var/rads = H.radiation / 25
|
||||
H.radiation = max(H.radiation-rads, 0)
|
||||
H.nutrition = min(H.nutrition+rads, NUTRITION_LEVEL_WELL_FED+10)
|
||||
H.adjustBruteLoss(-(rads))
|
||||
H.adjustToxLoss(-(rads))
|
||||
/datum/species/diona/handle_reagents(mob/living/carbon/human/H, datum/reagent/R)
|
||||
if(R.id == "glyphosate" || R.id == "atrazine")
|
||||
H.adjustToxLoss(3) //Deal aditional damage
|
||||
return TRUE
|
||||
return ..()
|
||||
|
||||
/datum/species/diona/handle_life(mob/living/carbon/human/H)
|
||||
if(H.stat == DEAD)
|
||||
return
|
||||
var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing
|
||||
if(isturf(H.loc)) //else, there's considered to be no light
|
||||
var/turf/T = H.loc
|
||||
light_amount = min(T.get_lumcount() * 10, 5) //hardcapped so it's not abused by having a ton of flashlights
|
||||
H.nutrition = min(H.nutrition+light_amount, NUTRITION_LEVEL_WELL_FED+10)
|
||||
light_amount = min(1, T.get_lumcount()) - 0.5
|
||||
if(light_amount > 0)
|
||||
H.clear_alert("nolight")
|
||||
else
|
||||
H.throw_alert("nolight", /obj/screen/alert/nolight)
|
||||
H.nutrition += light_amount * 10
|
||||
if(H.nutrition > NUTRITION_LEVEL_ALMOST_FULL)
|
||||
H.nutrition = NUTRITION_LEVEL_ALMOST_FULL
|
||||
if(light_amount > 0.2 && !H.suiciding) //if there's enough light, heal
|
||||
if(!pod && H.health <= 0)
|
||||
return
|
||||
H.adjustBruteLoss(-1)
|
||||
H.adjustFireLoss(-1)
|
||||
H.adjustToxLoss(-1)
|
||||
H.adjustOxyLoss(-1)
|
||||
|
||||
if(light_amount > 0)
|
||||
H.clear_alert("nolight")
|
||||
else
|
||||
H.throw_alert("nolight", /obj/screen/alert/nolight)
|
||||
|
||||
if((light_amount >= 5) && !H.suiciding) //if there's enough light, heal
|
||||
|
||||
H.adjustBruteLoss(-(light_amount/2))
|
||||
H.adjustFireLoss(-(light_amount/4))
|
||||
if(H.nutrition < NUTRITION_LEVEL_STARVING+50)
|
||||
H.take_overall_damage(10,0)
|
||||
if(H.nutrition < NUTRITION_LEVEL_STARVING + 50)
|
||||
H.adjustBruteLoss(2)
|
||||
..()
|
||||
|
||||
/datum/species/diona/pod //Same name and everything; we want the same limitations on them; we just want their regeneration to kick in at all times and them to have special factions
|
||||
pod = TRUE
|
||||
|
||||
/datum/species/diona/pod/on_species_gain(mob/living/carbon/C, datum/species/old_species)
|
||||
. = ..()
|
||||
C.faction |= "plants"
|
||||
C.faction |= "vines"
|
||||
|
||||
/datum/species/diona/pod/on_species_loss(mob/living/carbon/C)
|
||||
. = ..()
|
||||
C.faction -= "plants"
|
||||
C.faction -= "vines"
|
||||
@@ -70,6 +70,13 @@
|
||||
if(!silent && !isnull(usr))
|
||||
log_and_message_admins("cleared the supplied laws of [src]")
|
||||
|
||||
/mob/living/silicon/proc/clear_zeroth_law(var/silent = FALSE)
|
||||
throw_alert("newlaw", /obj/screen/alert/newlaw)
|
||||
laws_sanity_check()
|
||||
laws.clear_zeroth_laws()
|
||||
if(!silent && !isnull(usr))
|
||||
log_and_message_admins("cleared the zeroth law of [src]")
|
||||
|
||||
/mob/living/silicon/proc/statelaws(var/datum/ai_laws/laws)
|
||||
var/prefix = ""
|
||||
if(MAIN_CHANNEL == lawchannel)
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
/mob/living/simple_animal/hostile/skeleton
|
||||
name = "reanimated skeleton"
|
||||
desc = "A real bonefied skeleton, doesn't seem like it wants to socialize."
|
||||
icon = 'icons/mob/animal.dmi'
|
||||
icon_state = "skeleton"
|
||||
icon_living = "skeleton"
|
||||
turns_per_move = 5
|
||||
speak_emote = list("rattles")
|
||||
emote_see = list("rattles")
|
||||
a_intent = INTENT_HARM
|
||||
maxHealth = 40
|
||||
health = 40
|
||||
speed = 1
|
||||
harm_intent_damage = 5
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 15
|
||||
minbodytemp = 0
|
||||
maxbodytemp = 1500
|
||||
healable = FALSE //they're skeletons how would bruise packs help them??
|
||||
attacktext = "slashes"
|
||||
attack_sound = 'sound/hallucinations/growl1.ogg'
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
unsuitable_atmos_damage = 10
|
||||
robust_searching = 1
|
||||
stat_attack = UNCONSCIOUS
|
||||
gold_core_spawnable = CHEM_MOB_SPAWN_HOSTILE
|
||||
faction = list("skeleton")
|
||||
see_in_dark = 8
|
||||
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
|
||||
deathmessage = "collapses into a pile of bones!"
|
||||
del_on_death = TRUE
|
||||
loot = list(/obj/effect/decal/remains/human)
|
||||
|
||||
/mob/living/simple_animal/hostile/skeleton/eskimo
|
||||
name = "undead eskimo"
|
||||
desc = "The reanimated remains of some poor traveler."
|
||||
icon_state = "eskimo"
|
||||
icon_living = "eskimo"
|
||||
maxHealth = 55
|
||||
health = 55
|
||||
weather_immunities = list("snow")
|
||||
gold_core_spawnable = CHEM_MOB_SPAWN_INVALID
|
||||
melee_damage_lower = 17
|
||||
melee_damage_upper = 20
|
||||
deathmessage = "collapses into a pile of bones, its gear falling to the floor!"
|
||||
loot = list(/obj/effect/decal/remains/human,
|
||||
/obj/item/twohanded/spear,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
/obj/item/clothing/suit/hooded/wintercoat)
|
||||
@@ -184,8 +184,10 @@
|
||||
var/randomize = pick("robot", "slime", "xeno", "human", "animal")
|
||||
switch(randomize)
|
||||
if("robot")
|
||||
var/path
|
||||
if(prob(30))
|
||||
new_mob = new /mob/living/silicon/robot/syndicate(M.loc)
|
||||
path = pick(typesof(/mob/living/silicon/robot/syndicate))
|
||||
new_mob = new path(M.loc)
|
||||
else
|
||||
new_mob = new /mob/living/silicon/robot(M.loc)
|
||||
new_mob.gender = M.gender
|
||||
@@ -193,6 +195,10 @@
|
||||
new_mob.job = "Cyborg"
|
||||
var/mob/living/silicon/robot/Robot = new_mob
|
||||
Robot.mmi = new /obj/item/mmi(new_mob)
|
||||
Robot.lawupdate = FALSE
|
||||
Robot.connected_ai = null
|
||||
Robot.clear_inherent_laws()
|
||||
Robot.clear_zeroth_law()
|
||||
if(ishuman(M))
|
||||
Robot.mmi.transfer_identity(M) //Does not transfer key/client.
|
||||
if("slime")
|
||||
|
||||
@@ -143,7 +143,6 @@
|
||||
M.apply_effect((rand(30,80)),IRRADIATE)
|
||||
M.Weaken(5)
|
||||
M.visible_message("<span class='warning'>[M] writhes in pain as [M.p_their()] vacuoles boil.</span>", "<span class='userdanger'>You writhe in pain as your vacuoles boil!</span>", "<span class='italics'>You hear the crunching of leaves.</span>")
|
||||
if(prob(35))
|
||||
if(prob(80))
|
||||
randmutb(M)
|
||||
domutcheck(M,null)
|
||||
|
||||
@@ -988,10 +988,10 @@
|
||||
C.adjustToxLoss(lethality)
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(IS_PLANT in H.dna.species.species_traits) //plantmen take a LOT of damage
|
||||
H.adjustToxLoss(50)
|
||||
if(IS_PLANT in H.dna.species.species_traits) //plantmen take extra damage
|
||||
H.adjustToxLoss(3)
|
||||
..()
|
||||
else if(istype(M, /mob/living/simple_animal/diona)) //plantmen monkeys (diona) take EVEN MORE damage
|
||||
else if(istype(M, /mob/living/simple_animal/diona)) //nymphs take EVEN MORE damage
|
||||
var/mob/living/simple_animal/diona/D = M
|
||||
D.adjustHealth(100)
|
||||
..()
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
righthand_file = 'icons/goonstation/mob/inhands/items_righthand.dmi'
|
||||
icon_state = "ivbag"
|
||||
volume = 200
|
||||
possible_transfer_amounts = list(1,5,10)
|
||||
possible_transfer_amounts = list(1,5,10,15,20,25,30,50) // Everything above 10 is NOT usable on a person and is instead used for transfering to other containers
|
||||
amount_per_transfer_from_this = 1
|
||||
container_type = OPENCONTAINER
|
||||
var/label_text
|
||||
@@ -53,6 +53,11 @@
|
||||
end_processing()
|
||||
return
|
||||
|
||||
if(amount_per_transfer_from_this > 10) // Prevents people from switching to illegal transfer values while the IV is already in someone, i.e. anything over 10
|
||||
visible_message("<span class='danger'>The IV bag's needle pops out of [injection_target]'s arm. The transfer amount is too high!</span>")
|
||||
end_processing()
|
||||
return
|
||||
|
||||
if(get_dist(get_turf(src), get_turf(injection_target)) > 1)
|
||||
to_chat(injection_target, "<span class='userdanger'>The [src]'s' needle is ripped out of you!</span>")
|
||||
injection_target.apply_damage(3, BRUTE, pick("r_arm", "l_arm"))
|
||||
@@ -98,6 +103,9 @@
|
||||
else // Inserting the needle
|
||||
if(!L.can_inject(user, 1))
|
||||
return
|
||||
if(amount_per_transfer_from_this > 10) // We only want to be able to transfer 1, 5, or 10 units to people. Higher numbers are for transfering to other containers
|
||||
to_chat(user, "<span class='warning'>The IV bag can only be used on someone with a transfer amount of 1, 5 or 10.</span>")
|
||||
return
|
||||
if(L != user)
|
||||
L.visible_message("<span class='danger'>[user] is trying to insert [src]'s needle into [L]'s arm!</span>", \
|
||||
"<span class='userdanger'>[user] is trying to insert [src]'s needle into [L]'s arm!</span>")
|
||||
@@ -107,6 +115,22 @@
|
||||
"<span class='userdanger'>[user] inserts [src]'s needle into [L]'s arm!</span>")
|
||||
begin_processing(L)
|
||||
|
||||
else if(target.is_refillable() && is_drainable()) // Transferring from IV bag to other containers
|
||||
if(!reagents.total_volume)
|
||||
to_chat(user, "<span class='warning'>[src] is empty.</span>")
|
||||
return
|
||||
|
||||
if(target.reagents.total_volume >= target.reagents.maximum_volume)
|
||||
to_chat(user, "<span class='warning'>[target] is full.</span>")
|
||||
return
|
||||
|
||||
var/trans = reagents.trans_to(target, amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You transfer [trans] units of the solution to [target].</span>")
|
||||
|
||||
else if(istype(target, /obj/item/reagent_containers/glass) && !target.is_open_container())
|
||||
to_chat(user, "<span class='warning'>You cannot fill [target] while it is sealed.</span>")
|
||||
return
|
||||
|
||||
|
||||
/obj/item/reagent_containers/iv_bag/update_icon()
|
||||
overlays.Cut()
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
//lavaland clown planet papers
|
||||
|
||||
/obj/item/paper/crumpled/bloody/ruins/lavaland/clown_planet/escape
|
||||
info = "If you dare not continue down this path of madness, escape can be found through the chute in this room."
|
||||
|
||||
/obj/item/paper/crumpled/bloody/ruins/lavaland/clown_planet/hope
|
||||
info = "Abandon hope, all ye who enter here."
|
||||
@@ -17,7 +17,7 @@
|
||||
density = TRUE
|
||||
roundstart = FALSE
|
||||
death = FALSE
|
||||
mob_species = /datum/species/diona
|
||||
mob_species = /datum/species/diona/pod
|
||||
flavour_text = "<span class='big bold'>You are a sentient ecosystem,</span><b> an example of the mastery over life that your creators possessed. Your masters, benevolent as they were, created uncounted \
|
||||
seed vaults and spread them across the universe to every planet they could chart. You are in one such seed vault. Your goal is to cultivate and spread life wherever it will go while waiting \
|
||||
for contact from your creators. Estimated time of last contact: Deployment, 5x10^3 millennia ago.</b>"
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
name = "core trunk"
|
||||
max_damage = 200
|
||||
min_broken_damage = 50
|
||||
cannot_break = 1
|
||||
amputation_point = "trunk"
|
||||
encased = null
|
||||
gendered_icon = 0
|
||||
@@ -10,7 +9,6 @@
|
||||
/obj/item/organ/external/groin/diona
|
||||
name = "fork"
|
||||
min_broken_damage = 50
|
||||
cannot_break = 1
|
||||
amputation_point = "lower trunk"
|
||||
gendered_icon = 0
|
||||
|
||||
@@ -18,58 +16,49 @@
|
||||
name = "left upper tendril"
|
||||
max_damage = 35
|
||||
min_broken_damage = 20
|
||||
cannot_break = 1
|
||||
amputation_point = "upper left trunk"
|
||||
|
||||
/obj/item/organ/external/arm/right/diona
|
||||
name = "right upper tendril"
|
||||
max_damage = 35
|
||||
min_broken_damage = 20
|
||||
cannot_break = 1
|
||||
amputation_point = "upper right trunk"
|
||||
|
||||
/obj/item/organ/external/leg/diona
|
||||
name = "left lower tendril"
|
||||
max_damage = 35
|
||||
min_broken_damage = 20
|
||||
cannot_break = 1
|
||||
amputation_point = "lower left fork"
|
||||
|
||||
/obj/item/organ/external/leg/right/diona
|
||||
name = "right lower tendril"
|
||||
max_damage = 35
|
||||
min_broken_damage = 20
|
||||
cannot_break = 1
|
||||
amputation_point = "lower right fork"
|
||||
|
||||
/obj/item/organ/external/foot/diona
|
||||
name = "left foot"
|
||||
max_damage = 20
|
||||
min_broken_damage = 10
|
||||
cannot_break = 1
|
||||
amputation_point = "branch"
|
||||
|
||||
/obj/item/organ/external/foot/right/diona
|
||||
name = "right foot"
|
||||
max_damage = 20
|
||||
min_broken_damage = 10
|
||||
cannot_break = 1
|
||||
amputation_point = "branch"
|
||||
|
||||
/obj/item/organ/external/hand/diona
|
||||
name = "left grasper"
|
||||
cannot_break = 1
|
||||
amputation_point = "branch"
|
||||
|
||||
/obj/item/organ/external/hand/right/diona
|
||||
name = "right grasper"
|
||||
cannot_break = 1
|
||||
amputation_point = "branch"
|
||||
|
||||
/obj/item/organ/external/head/diona
|
||||
max_damage = 50
|
||||
min_broken_damage = 25
|
||||
cannot_break = 1
|
||||
encased = null
|
||||
amputation_point = "upper trunk"
|
||||
gendered_icon = 0
|
||||
@@ -82,6 +71,11 @@
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "nymph"
|
||||
|
||||
/obj/item/organ/internal/lungs/diona
|
||||
name = "respiratory vacuoles"
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "nymph"
|
||||
|
||||
/obj/item/organ/internal/brain/diona // Turns into a nymph instantly, no transplanting possible.
|
||||
name = "gas bladder"
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
|
||||
Reference in New Issue
Block a user