Xenomorph Structure Icon Update + Misc Fixes/Improvements (#7336)

This commit is contained in:
Aroliacue
2023-12-07 06:31:18 +10:00
committed by GitHub
parent e87a358334
commit 8dc3f411a2
17 changed files with 112 additions and 38 deletions

View File

@@ -38,17 +38,17 @@
var/obj/effect/alien/weeds/node/linked_node = null
var/static/list/weedImageCache
/obj/effect/alien/weeds/Initialize(var/mapload, var/node, var/newcolor)
/obj/effect/alien/weeds/Initialize(var/mapload, var/node) // CHOMPedit: No coloration.
. = ..()
if(isspace(loc))
return INITIALIZE_HINT_QDEL
linked_node = node
if(newcolor)
color = newcolor
// if(newcolor)
// color = newcolor // CHOMPedit: No coloration.
if(icon_state == "weeds")
icon_state = pick("weeds", "weeds1", "weeds2")
icon_state = pick("weeds", "weeds1", "weeds2", "weeds3", "weeds4", "weeds5", "weeds6", "weeds7", "weeds8", "weeds9", "weeds10", "weeds11", "weeds12", "weeds13", "weeds14", "weeds15") // CHOMPedit: More icons variants.
fullUpdateWeedOverlays()
@@ -73,9 +73,9 @@
light_color = "#673972"
var/node_range = NODERANGE
var/set_color = "#321D37"
// var/set_color = "#321D37" // CHOMPedit: Removing coloration.
/obj/effect/alien/weeds/node/Initialize(var/mapload, var/node, var/newcolor)
/obj/effect/alien/weeds/node/Initialize(var/mapload, var/node) // CHOMPedit: Removing coloration.
. = ..()
for(var/obj/effect/alien/weeds/existing in loc)
@@ -86,10 +86,10 @@
linked_node = src
if(newcolor)
set_color = newcolor
if(set_color)
color = set_color
// if(newcolor)
// set_color = newcolor
// if(set_color)
// color = set_color // CHOMPedit: Removing coloration.
START_PROCESSING(SSobj, src) // Only the node processes in a subsystem, the rest are process()'d by the node
@@ -151,7 +151,7 @@
if(T1.c_airblock(T2) == BLOCKED)
continue
new /obj/effect/alien/weeds(T2, linked_node, color)
new /obj/effect/alien/weeds(T2, linked_node) // CHOMPedit: No coloration.
/obj/effect/alien/weeds/node/process()
set background = 1
@@ -166,7 +166,7 @@
if(!W.linked_node)
W.linked_node = src
W.color = W.linked_node.set_color
// W.color = W.linked_node.set_color // CHOMPedit: No coloration.
if(prob(max(10, 60 - (5 * nearby_weeds.len))))
W.process()
@@ -225,7 +225,7 @@
healthcheck()
// CHOMPedit start - Smaller-ranged nodes for Xenomorph Hybrids, node/weed deletion.
/obj/effect/alien/weeds/attack_hand()
/obj/effect/alien/weeds/attack_hand(mob/user as mob)
usr.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
if (HULK in usr.mutations)
visible_message("<span class='warning'>[usr] destroys the [name]!</span>")
@@ -234,14 +234,13 @@
// Aliens can get straight through these.
if(istype(usr,/mob/living/carbon))
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
health = 0
healthcheck()
return
visible_message("<span class='warning'>[usr] claws at the [name]!</span>")
health -= rand(5,10)
if(user.a_intent == I_HURT)
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
health = 0
healthcheck()
return
healthcheck()
return

View File

@@ -249,7 +249,8 @@
/obj/item/device/flashlight,
/obj/item/weapon/cell/device,
/obj/item/weapon/extinguisher/mini,
/obj/item/weapon/storage/quickdraw/syringe_case
/obj/item/weapon/storage/quickdraw/syringe_case,
/obj/item/ammo_casing/macrobattery // CHOMPedit: Macrobatteries for the Curabitur can fit into medbelts.
)
/obj/item/weapon/storage/belt/medical/emt

View File

@@ -66,7 +66,7 @@
..()
return
/obj/structure/alien/attack_hand()
/obj/structure/alien/attack_hand(mob/user as mob)
usr.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
if (HULK in usr.mutations)
visible_message("<span class='warning'>[usr] destroys the [name]!</span>")
@@ -75,14 +75,13 @@
// Aliens can get straight through these.
if(istype(usr,/mob/living/carbon))
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
health = 0
healthcheck()
return
visible_message("<span class='warning'>[usr] claws at the [name]!</span>")
health -= rand(5,10)
if(user.a_intent == I_HURT)
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
health = 0
healthcheck()
return
healthcheck()
return

View File

@@ -283,3 +283,30 @@
if(!iscultist(L) && !istype(L, /mob/living/simple_mob/construct))
return
..()
// CHOMPedit start: Allows removing resin doors.
/obj/structure/simple_door/resin/attack_hand(mob/user as mob)
usr.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
if (HULK in usr.mutations)
visible_message("<span class='warning'>[usr] destroys the [name]!</span>")
hardness = 0
else
// Carbons can get straight through these.
if(istype(usr,/mob/living/carbon))
if(user.a_intent == I_HURT)
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
hardness = 0
CheckHardness()
return
else
visible_message("<span class='warning'>[usr] tears at the [name]!</span>")
hardness -= 2
CheckHardness()
return
CheckHardness()
TryToSwitchState(user)
return
// CHOMPedit end.

View File

@@ -84,3 +84,24 @@
density = FALSE
qdel(src)
return
// CHOMPedit start - Allows xenos to clean nests.
/obj/structure/bed/nest/attack_hand(mob/user as mob)
usr.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
if (HULK in usr.mutations)
visible_message("<span class='warning'>[usr] destroys the [name]!</span>")
health = 0
else
// Aliens can get straight through these.
if(istype(usr,/mob/living/carbon))
if(user.a_intent == I_HURT)
var/mob/living/carbon/M = usr
if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)
visible_message ("<span class='warning'>[usr] strokes the [name] and it melts away!</span>", 1)
health = 0
healthcheck()
return
healthcheck()
return
// CHOMPedit end.

View File

@@ -325,6 +325,12 @@
)
drop_sound = 'sound/items/drop/gloves.ogg'
pickup_sound = 'sound/items/pickup/gloves.ogg'
// CHOMPedit start: All gloves give cold/heat protection.
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE
// CHOMPedit end.
/obj/item/clothing/proc/set_clothing_index()
return

View File

@@ -1,7 +1,9 @@
/datum/material/resin
name = "resin"
icon_colour = "#353C40" // CHOMPedit: Alternative colour to distinguish from weed floor tiles.
// icon_colour = "#353C40" // CHOMPedit: No longer needed
icon_base = "resin"
integrity = 50 // CHOMPedit: Same as wood.
hardness = 15 // CHOMPedit: Same as wood.
table_icon_base = "stone"
dooropen_noise = 'sound/effects/attackblob.ogg'
door_icon_base = "resin"
@@ -38,7 +40,7 @@
new /datum/stack_recipe("[display_name] door", /obj/structure/simple_door/resin, 1, one_per_turf = 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE), // CHOMPedit: Reduced material cost.
new /datum/stack_recipe("[display_name] barricade", /obj/structure/alien/wall, 1, time = 5 SECONDS, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE, recycle_material = "[name]"), // CHOMPedit: Reduced material cost.
new /datum/stack_recipe("[display_name] nest", /obj/structure/bed/nest, 1, one_per_turf = 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE), // CHOMPedit: Reduced material cost.
new /datum/stack_recipe("[display_name] wall girders", /obj/structure/girder/resin, 1, time = 5 SECONDS, one_per_turf = 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE), // CHOMPedit: Reduced material cost.
// new /datum/stack_recipe("[display_name] wall girders", /obj/structure/girder/resin, 1, time = 5 SECONDS, one_per_turf = 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE), // CHOMPedit: Removed, build walls with secrete resin
new /datum/stack_recipe("crude [display_name] bandage", /obj/item/stack/medical/crude_pack, 2, time = 2 SECONDS, pass_stack_color = TRUE, recycle_material = "[name]"), // CHOMPedit: Increased material cost.
new /datum/stack_recipe("[display_name] net", /obj/item/weapon/material/fishing_net, 2, time = 5 SECONDS, supplied_material = "[name]", pass_stack_color = TRUE), // CHOMPedit: Reduced material cost.
new /datum/stack_recipe("[display_name] membrane", /obj/structure/alien/membrane, 1, time = 2 SECONDS, pass_stack_color = TRUE, recycle_material = "[name]"),

View File

@@ -270,7 +270,7 @@
if(O)
visible_message("<span class='warning'><B>[src] vomits up a thick purple substance and begins to shape it!</B></span>", "<span class='alium'>You shape a [choice].</span>")
O.color = "#321D37"
// O.color = "#321D37" // CHOMPedit: Removing colouration, adding predefined colour icons.
playsound(src, 'sound/effects/blobattack.ogg', 40, 1)
return

View File

@@ -40,7 +40,7 @@
disable_duration_percent = 0.7
outgoing_melee_damage_percent = 1.3
attack_speed_percent = -1.3 // CHOMPedit: It was actually slowing it down, lol
attack_speed_percent = 0.7 // CHOMPedit: It was actually slowing it down, lol
accuracy = 30
slowdown = -1
evasion = 30

View File

@@ -21,6 +21,7 @@
item_state = "multicannon"
slot_flags = SLOT_BACK
recoil = FALSE
fire_sound = 'modular_chomp/sound/weapons/energy/laser_strong.ogg' // CHOMPedit: New firesound, overwrites the sfx from the macrobatteries.
/obj/item/weapon/gun/projectile/multi_cannon/update_icon()
. = ..()

View File

@@ -913,8 +913,26 @@
else if(istype(I,/obj/item/weapon/newspaper))
to_chat(src, "<span class='notice'>You can taste the dry flavor of garbage, oh wait its just the news.</span>")
else if (istype(I,/obj/item/weapon/cell))
visible_message("<span class='warning'>[src] sates their electric appeite with a [I]!</span>")
visible_message("<span class='warning'>[src] sates their electric appetite with a [I]!</span>")
to_chat(src, "<span class='notice'>You can taste the spicy flavor of electrolytes, yum.</span>")
else if (istype(I,/obj/item/device/walkpod))
visible_message("<span class='warning'>[src] sates their musical appetite with a [I]!</span>")
to_chat(src, "<span class='notice'>You can taste the jazzy flavor of music.</span>")
else if (istype(I,/obj/item/mail/junkmail))
visible_message("<span class='warning'>[src] devours the [I]!</span>")
to_chat(src, "<span class='notice'>You can taste the flavor of the galactic postal service.</span>")
else if (istype(I,/obj/item/weapon/gun/energy/sizegun))
visible_message("<span class='warning'>[src] devours the [I]!</span>")
to_chat(src, "<span class='notice'>You didn't read the warning label, did you?</span>")
else if (istype(I,/obj/item/device/slow_sizegun))
visible_message("<span class='warning'>[src] devours the [I]!</span>")
to_chat(src, "<span class='notice'>You taste the flavor of sunday driver bluespace.</span>")
else if (istype(I,/obj/item/device/laser_pointer))
visible_message("<span class='warning'>[src] devours the [I]!</span>")
to_chat(src, "<span class='notice'>You taste the flavor of a laser.</span>")
else if (istype(I,/obj/item/canvas))
visible_message("<span class='warning'>[src] devours the [I]!</span>")
to_chat(src, "<span class='notice'>You taste the flavor of priceless artwork.</span>")
//CHOMPedit end
else

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

@@ -33,7 +33,7 @@
mob_overlay_state = "purple_electricity_constant"
outgoing_melee_damage_percent = 1.2 // Only affects melee weapons, not fists
attack_speed_percent = -1.2 // Increases attack speed by 20%
attack_speed_percent = 0.9 // Increases attack speed by 10%
evasion = 25 // Only affects ranged attacks missing
/datum/modifier/aura/xenoqueenbuff/check_if_valid()

View File

@@ -272,7 +272,7 @@
if(O)
visible_message("<span class='warning'><B>[src] vomits up a thick purple substance and begins to shape it!</B></span>", "<span class='alium'>You shape a [choice].</span>")
O.color = "#321D37"
// O.color = "#321D37" // Adding predefined colour icons.
playsound(src, 'sound/effects/blobattack.ogg', 40, 1)
return

Binary file not shown.