Fixes mech part layering, rapidfire blasters (#9986)

This commit is contained in:
fernerr
2020-09-14 00:19:30 +02:00
committed by GitHub
parent 37e2f61f9e
commit cc418ca761
5 changed files with 17 additions and 12 deletions

View File

@@ -29,11 +29,11 @@
#define MECH_UNDER_LAYER 4 #define MECH_UNDER_LAYER 4
#define MECH_BASE_LAYER 4.01 #define MECH_BASE_LAYER 4.01
#define MECH_INTERMEDIATE_LAYER 4.02 #define MECH_HATCH_LAYER 4.02
#define MECH_PILOT_LAYER 4.03 #define MECH_HEAD_LAYER 4.03
#define MECH_LEG_LAYER 4.04 #define MECH_EYES_LAYER 4.04
#define MECH_COCKPIT_LAYER 4.05 #define MECH_LEG_LAYER 4.05
#define MECH_ARM_LAYER 4.06 #define MECH_ARM_LAYER 4.06
#define MECH_DECAL_LAYER 4.07 #define MECH_DECAL_LAYER 4.07
#define MECH_GEAR_LAYER 4.08 #define MECH_GEAR_LAYER 4.08
#define MECH_ABOVE_LAYER 4.09 #define MECH_ABOVE_LAYER 4.09

View File

@@ -83,7 +83,7 @@
playsound(AD, 'sound/machines/airlock_close_force.ogg', 100, 1) playsound(AD, 'sound/machines/airlock_close_force.ogg', 100, 1)
AD.visible_message(SPAN_DANGER("\The [owner] forces \the [AD] closed!")) AD.visible_message(SPAN_DANGER("\The [owner] forces \the [AD] closed!"))
return return
if(length(carrying) >= carrying_capacity) if(length(carrying) >= carrying_capacity)
to_chat(user, SPAN_WARNING("\The [src] is fully loaded!")) to_chat(user, SPAN_WARNING("\The [src] is fully loaded!"))
return return
@@ -191,7 +191,7 @@
desc = "An exosuit-mounted light." desc = "An exosuit-mounted light."
icon_state = "mech_floodlight" icon_state = "mech_floodlight"
restricted_hardpoints = list(HARDPOINT_HEAD) restricted_hardpoints = list(HARDPOINT_HEAD)
mech_layer = MECH_INTERMEDIATE_LAYER mech_layer = MECH_DECAL_LAYER
var/on = 0 var/on = 0
var/brightness_on = 12 //can't remember what the maxed out value is var/brightness_on = 12 //can't remember what the maxed out value is

View File

@@ -25,11 +25,11 @@ proc/get_mech_icon(var/list/components = list(), var/overlay_layer = FLOAT_LAYER
new_overlays += get_mech_image("[body.icon_state]_cockpit", body.on_mech_icon, MECH_BASE_LAYER) new_overlays += get_mech_image("[body.icon_state]_cockpit", body.on_mech_icon, MECH_BASE_LAYER)
if(LAZYLEN(pilot_overlays)) if(LAZYLEN(pilot_overlays))
new_overlays += pilot_overlays new_overlays += pilot_overlays
if(head)
new_overlays += get_mech_image("[head.icon_state]", head.on_mech_icon, head.color, MECH_INTERMEDIATE_LAYER)
new_overlays += get_mech_image("[head.icon_state]_eyes", head.on_mech_icon, null, MECH_INTERMEDIATE_LAYER)
if(body) if(body)
new_overlays += get_mech_image("[body.icon_state]_overlay[hatch_closed ? "" : "_open"]", body.on_mech_icon, body.color, MECH_BASE_LAYER) new_overlays += get_mech_image("[body.icon_state]_overlay[hatch_closed ? "" : "_open"]", body.on_mech_icon, body.color, MECH_HATCH_LAYER)
if(head)
new_overlays += get_mech_image("[head.icon_state]", head.on_mech_icon, head.color, MECH_HEAD_LAYER)
new_overlays += get_mech_image("[head.icon_state]_eyes", head.on_mech_icon, null, MECH_EYES_LAYER)
if(arms) if(arms)
new_overlays += get_mech_image(arms.icon_state, arms.on_mech_icon, arms.color, MECH_ARM_LAYER) new_overlays += get_mech_image(arms.icon_state, arms.on_mech_icon, arms.color, MECH_ARM_LAYER)
if(legs) if(legs)
@@ -54,7 +54,7 @@ proc/get_mech_icon(var/list/components = list(), var/overlay_layer = FLOAT_LAYER
new_overlays += get_mech_image(use_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, hardpoint_object.mech_layer) new_overlays += get_mech_image(use_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, hardpoint_object.mech_layer)
var/far_icon_state = "[use_icon_state]_far" var/far_icon_state = "[use_icon_state]_far"
if(far_icon_state in mecha_weapon_overlays) if(far_icon_state in mecha_weapon_overlays)
new_overlays += get_mech_image(far_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, MECH_BASE_LAYER - 0.01) new_overlays += get_mech_image(far_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, MECH_UNDER_LAYER)
overlays = new_overlays overlays = new_overlays

View File

@@ -35,6 +35,7 @@
self_recharge = TRUE self_recharge = TRUE
recharge_time = 1.5 recharge_time = 1.5
dispersion = list(3,6,9,12) dispersion = list(3,6,9,12)
firemodes = list()
/obj/item/gun/energy/blaster/revolver /obj/item/gun/energy/blaster/revolver
name = "blaster revolver" name = "blaster revolver"

View File

@@ -0,0 +1,4 @@
author: Ferner
delete-after: True
changes:
- bugfix: "Mechs will now handle their part layering a bit more sanely, fixed the mounted rapidfire blaster being stuck on the wrong firing mode."