diff --git a/code/game/objects/effects/spiderperson_web.dm b/code/game/objects/effects/spiderperson_web.dm
index 93d254d672..d448592eb0 100644
--- a/code/game/objects/effects/spiderperson_web.dm
+++ b/code/game/objects/effects/spiderperson_web.dm
@@ -37,7 +37,7 @@
if(isspiderperson(mover.pulledby))
return TRUE
- if(prob(50))
+ if(prob(20))
to_chat(mover, "You get stuck in \the [src] for a moment.")
return FALSE
@@ -54,7 +54,7 @@
. = ..()
/obj/structure/spider_player/cocoon/container_resist(mob/living/user)
- var/breakout_time = 1000 // DECI not DECA ffs
+ var/breakout_time = 150 // DECI not DECA ffs
to_chat(user, "You struggle against the tight bonds... (This will take about [DisplayTimeText(breakout_time)].)")
visible_message("You see something struggling and writhing in \the [src]!")
if(do_after(user,(breakout_time), target = src))
diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm
index 8fc0ea8c04..1386a0d7a0 100644
--- a/code/modules/client/preferences_savefile.dm
+++ b/code/modules/client/preferences_savefile.dm
@@ -693,8 +693,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
features["insect_fluff"] = sanitize_inlist(features["insect_fluff"], GLOB.insect_fluffs_list)
features["insect_markings"] = sanitize_inlist(features["insect_markings"], GLOB.insect_markings_list, "None")
features["insect_wings"] = sanitize_inlist(features["insect_wings"], GLOB.insect_wings_list)
- features["spider_legs"] = sanitize_inlist(features["spider_legs"], GLOB.spider_legs_list, "Plain")
- features["spider_spinneret"] = sanitize_inlist(features["spider_spinneret"], GLOB.spider_spinneret_list, "Plain")
+ features["spider_legs"] = sanitize_inlist(features["spider_legs"], GLOB.spider_legs_list, "Plain")
+ features["spider_spinneret"] = sanitize_inlist(features["spider_spinneret"], GLOB.spider_spinneret_list, "Plain")
features["spider_mandibles"] = sanitize_inlist(features["spider_mandibles"], GLOB.spider_mandibles_list, "Plain")
var/static/size_min
diff --git a/code/modules/mob/dead/new_player/sprite_accessories/spider.dm b/code/modules/mob/dead/new_player/sprite_accessories/spider.dm
index dcfa9aa45f..fff9c51ece 100644
--- a/code/modules/mob/dead/new_player/sprite_accessories/spider.dm
+++ b/code/modules/mob/dead/new_player/sprite_accessories/spider.dm
@@ -1,6 +1,8 @@
/datum/sprite_accessory/spider_legs
icon = 'icons/mob/spider_legs.dmi'
- color_src = MUTCOLORS
+ relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
+ mutant_part_string = "spider_legs"
+ color_src = 0
/datum/sprite_accessory/spider_legs/plain
name = "Plain"
@@ -16,7 +18,9 @@
/datum/sprite_accessory/spider_spinneret
icon = 'icons/mob/spider_spinneret.dmi'
- color_src = MUTCOLORS
+ relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER)
+ mutant_part_string = "spinneret"
+ color_src = 0
/datum/sprite_accessory/spider_spinneret/plain
name = "Plain"
@@ -32,7 +36,9 @@
/datum/sprite_accessory/spider_mandibles
icon = 'icons/mob/spider_mandibles.dmi'
- color_src = MUTCOLORS
+ relevant_layers = list(BODY_ADJ_LAYER, BODY_FRONT_LAYER)
+ mutant_part_string = "mandibles"
+ color_src = 0
/datum/sprite_accessory/spider_mandibles/plain
name = "Plain"
diff --git a/code/modules/mob/living/carbon/human/species_types/spider.dm b/code/modules/mob/living/carbon/human/species_types/spider.dm
index e93375b83e..a4e78a2830 100644
--- a/code/modules/mob/living/carbon/human/species_types/spider.dm
+++ b/code/modules/mob/living/carbon/human/species_types/spider.dm
@@ -6,7 +6,7 @@
default_color = "00FF00"
species_traits = list(LIPS, NOEYES, NO_UNDERWEAR)
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID|MOB_BUG
- mutant_bodyparts = list("spider_legs", "spider_spinneret", "spider_mandibles")
+ mutant_bodyparts = list("spider_legs" = "Plain", "spider_spinneret" = "Plain", "spider_mandibles" = "Plain")
attack_verb = "slash"
attack_sound = 'sound/weapons/slash.ogg'
miss_sound = 'sound/weapons/slashmiss.ogg'
@@ -17,9 +17,9 @@
mutanteyes = /obj/item/organ/eyes/night_vision/spider
mutanttongue = /obj/item/organ/tongue/spider
species_language_holder = /datum/language_holder/spider
- var/web_cooldown = 30
+ var/web_cooldown = 200
var/web_ready = TRUE
- var/spinner_rate = 75
+ var/spinner_rate = 25
/datum/species/spider/random_name(gender,unique,lastname)
if(unique)
@@ -75,7 +75,7 @@
if(H.stat == "DEAD")
return
if(E.web_ready == FALSE)
- to_chat(H, "You need to wait awhile to regenerate web fluid.")
+ to_chat(H, "You need to wait a while to regenerate web fluid.")
return
var/turf/T = get_turf(H)
if(!T)
@@ -93,12 +93,10 @@
if(!do_after(H, 10 SECONDS, 1, T))
to_chat(H, "Your web spinning was interrupted!")
return
- if(prob(75))
- H.adjust_nutrition(-E.spinner_rate)
- addtimer(VARSET_CALLBACK(E, web_ready, TRUE), E.web_cooldown)
- to_chat(H, "You use up a fair amount of energy spinning the web.")
+ H.adjust_nutrition(-E.spinner_rate)
+ addtimer(VARSET_CALLBACK(E, web_ready, TRUE), E.web_cooldown)
+ to_chat(H, "You use up a fair amount of energy weaving a web on the ground with your spinneret!")
new /obj/structure/spider_player(T, owner)
- to_chat(H, "You weave a web on the ground with your spinneret!")
else
to_chat(H, "You're too hungry to spin web right now, eat something first!")
@@ -122,7 +120,7 @@
var/nutrition_threshold = NUTRITION_LEVEL_FED
if (H.nutrition >= nutrition_threshold)
to_chat(H, "You pull out a strand from your spinneret, ready to wrap a target.
\
- (Press ALT+CLICK or MMB on the target to start wrapping.)")
+ (Press ALT+CLICK on the target to start wrapping.)")
H.adjust_nutrition(E.spinner_rate * -0.5)
addtimer(VARSET_CALLBACK(E, web_ready, TRUE), E.web_cooldown)
RegisterSignal(H, list(COMSIG_MOB_ALTCLICKON), .proc/cocoonAtom)
diff --git a/icons/mob/spider_legs.dmi b/icons/mob/spider_legs.dmi
index d04b5a719e..51c4623ba4 100644
Binary files a/icons/mob/spider_legs.dmi and b/icons/mob/spider_legs.dmi differ
diff --git a/icons/mob/spider_mandibles.dmi b/icons/mob/spider_mandibles.dmi
index 81b4b29a12..9369e2d5fa 100644
Binary files a/icons/mob/spider_mandibles.dmi and b/icons/mob/spider_mandibles.dmi differ
diff --git a/icons/mob/spider_parts.dmi b/icons/mob/spider_parts.dmi
index 389ca79dda..2e1024240d 100644
Binary files a/icons/mob/spider_parts.dmi and b/icons/mob/spider_parts.dmi differ
diff --git a/icons/mob/spider_spinneret.dmi b/icons/mob/spider_spinneret.dmi
index 36dcb6714c..688ff90e0d 100644
Binary files a/icons/mob/spider_spinneret.dmi and b/icons/mob/spider_spinneret.dmi differ