Merge pull request #7722 from fernerr/191217-sprites_mecha

New Mech sprites and some other tweaks
This commit is contained in:
Werner
2019-12-22 02:43:21 +01:00
committed by GitHub
18 changed files with 23 additions and 44 deletions
-1
View File
@@ -222,7 +222,6 @@ Sells devices, odds and ends, and medical stuff
possible_origins = list("Buy 'n Save", "Drug Carnival", "C&B", "Fentles", "Dr. Goods", "Beevees")
possible_trading_items = list(
/obj/item/device/flashlight = TRADER_ALL,
/obj/item/device/kit/paint = TRADER_SUBTYPES_ONLY,
/obj/item/aicard = TRADER_THIS_TYPE,
/obj/item/device/binoculars = TRADER_THIS_TYPE,
/obj/item/device/flash = TRADER_THIS_TYPE,
+1 -20
View File
@@ -65,23 +65,4 @@
species_restricted = list(H.species.get_bodytype())
kit.use(1,user)
return 1
return ..()
/obj/item/device/kit/paint
name = "exosuit customisation kit"
desc = "A kit containing all the needed tools and parts to repaint an exosuit."
var/removable = null
/obj/item/device/kit/paint/examine()
. = ..()
to_chat(usr, "This kit will add a '[new_name]' decal to a exosuit'.")
/obj/item/device/kit/paint/powerloader/flames_red
name = "\"Firestarter\" exosuit customisation kit"
new_name = "red flames"
new_icon = "flames_red"
/obj/item/device/kit/paint/powerloader/flames_blue
name = "\"Burning Chrome\" exosuit customisation kit"
new_name = "blue flames"
new_icon = "flames_blue"
return ..()
@@ -16,6 +16,11 @@
matter = list(DEFAULT_WALL_MATERIAL = 15000, "plastic" = 1000, "osmium" = 500)
dir = SOUTH
/obj/item/mech_component/pickup(mob/user)
pixel_x = initial(pixel_x)
pixel_y = initial(pixel_y)
return
/obj/item/mech_component/proc/set_colour(new_colour)
var/last_colour = color
color = new_colour
@@ -74,7 +79,6 @@
if(total_damage == max_damage)
take_component_damage(0,amt)
/obj/item/mech_component/proc/take_component_damage(var/brute, var/burn)
var/list/damageable_components = list()
for(var/obj/item/robot_parts/robot_component/RC in contents)
@@ -2,6 +2,8 @@
name = "body"
icon_state = "loader_body"
gender = NEUTER
pixel_y = -8
center_of_mass = list("x"=24, "y"=20)
var/mech_health = 300
var/obj/item/robot_parts/robot_component/diagnosis_unit/diagnostics
@@ -16,7 +18,7 @@
var/list/pilot_positions
var/pilot_coverage = 100
var/transparent_cabin = FALSE
var/hide_pilot = FALSE
var/hide_pilot = TRUE
has_hardpoints = list(HARDPOINT_BACK, HARDPOINT_LEFT_SHOULDER, HARDPOINT_RIGHT_SHOULDER)
/obj/item/mech_component/chassis/update_components()
@@ -62,7 +62,7 @@
/obj/structure/heavy_vehicle_frame/update_icon()
var/list/new_overlays = get_mech_icon(list(legs, head, body, arms), layer)
var/list/new_overlays = get_mech_icon(list(body, head), MECH_BASE_LAYER)
if(body)
density = TRUE
overlays += get_mech_image("[body.icon_state]_cockpit", body.icon, body.color)
@@ -70,6 +70,10 @@
new_overlays += get_mech_image("[body.icon_state]_open_overlay", body.icon, body.color)
else
density = FALSE
if(arms)
new_overlays += get_mech_image(arms.icon_state, arms.on_mech_icon, arms.color, MECH_ARM_LAYER)
if(legs)
new_overlays += get_mech_image(legs.icon_state, legs.on_mech_icon, legs.color, MECH_LEG_LAYER)
overlays = new_overlays
if(density != opacity)
set_opacity(density)
@@ -236,7 +240,6 @@
thing.dropInto(loc)
return
arms = thing
if(install_component(thing, user)) arms = thing
else if(istype(thing,/obj/item/mech_component/propulsion))
if(legs)
to_chat(user, "<span class='warning'>\The [src] already has a propulsion system installed.</span>")
@@ -246,7 +249,6 @@
thing.dropInto(loc)
return
legs = thing
if(install_component(thing, user)) legs = thing
else if(istype(thing,/obj/item/mech_component/sensors))
if(head)
to_chat(user, "<span class='warning'>\The [src] already has a sensor array installed.</span>")
@@ -1,6 +1,7 @@
/obj/item/mech_component/sensors
name = "head"
pixel_y = -18
center_of_mass = list("x"=24, "y"=34)
icon_state = "loader_head"
gender = NEUTER
@@ -1,6 +1,6 @@
/obj/item/mech_component/propulsion
name = "legs"
pixel_y = 12
center_of_mass = list("x"=24, "y"=4)
icon_state = "loader_legs"
power_use = 75
var/move_delay = 5
+2
View File
@@ -26,6 +26,8 @@ proc/get_mech_icon(var/list/components = list(), var/overlay_layer = FLOAT_LAYER
update_pilot_overlay(FALSE)
if(LAZYLEN(pilot_overlays))
new_overlays += pilot_overlays
if(head)
new_overlays += get_mech_image("[head.icon_state]_eyes", head.on_mech_icon, null, MECH_INTERMEDIATE_LAYER)
if(body)
new_overlays += get_mech_image("[body.icon_state]_overlay[hatch_closed ? "" : "_open"]", body.on_mech_icon, body.color, MECH_COCKPIT_LAYER)
if(arms)
@@ -323,18 +323,6 @@
to_chat(user, "<span class='warning'>\The [thing] could not be installed in that hardpoint.</span>")
return
else if(istype(thing, /obj/item/device/kit/paint))
user.visible_message("<span class='notice'>\The [user] opens \the [thing] and spends some quality time customising \the [src].</span>")
var/obj/item/device/kit/paint/P = thing
desc = P.new_desc
for(var/obj/item/mech_component/comp in list(arms, legs, head, body))
comp.decal = P.new_icon
if(P.new_icon_file)
icon = P.new_icon_file
queue_icon_update()
P.use(1, user)
return 1
else
if(user.a_intent != I_HURT)
if(thing.ismultitool())
@@ -66,7 +66,6 @@
pilot_coverage = 100
transparent_cabin = TRUE
hatch_descriptor = "canopy"
hide_pilot = TRUE //Sprite too small, legs clip through, so for now hide pilot
exosuit_desc_string = "an open and light chassis"
icon_state = "light_body"
max_damage = 50
@@ -25,7 +25,6 @@
hatch_descriptor = "hatch"
pilot_coverage = 100
transparent_cabin = TRUE
hide_pilot = TRUE
exosuit_desc_string = "a spherical chassis"
icon_state = "pod_body"
max_damage = 70
-1
View File
@@ -628,7 +628,6 @@ var/list/worths = list(
/obj/item/device/soulstone = 10000,
/obj/item/device/dociler = 450,
/obj/item/device/mmi = 1200,
/obj/item/device/kit/paint = 500,
/obj/item/device/kit = 100,
/obj/item/aicard = 6000,
/obj/item/device/chameleon = 4000,
-2
View File
@@ -26,8 +26,6 @@ var/global/list/minevendor_list = list( //keep in order of price
new /datum/data/mining_equipment("Deployable Ladder", /obj/item/ladder_mobile, 5, 200),
new /datum/data/mining_equipment("Deployable Hoist Kit", /obj/item/hoist_kit, 5, 200),
new /datum/data/mining_equipment("Material Scanners", /obj/item/clothing/glasses/material, 15, 200),
new /datum/data/mining_equipment("Paint Kit, Red Flames", /obj/item/device/kit/paint/powerloader/flames_red, 15, 200),
new /datum/data/mining_equipment("Paint Kit, Blue Flames", /obj/item/device/kit/paint/powerloader/flames_blue, 15, 200),
new /datum/data/mining_equipment("Mining Drill", /obj/item/pickaxe/drill, 10, 200),
new /datum/data/mining_equipment("Deep Ore Scanner", /obj/item/mining_scanner, 10, 250),
new /datum/data/mining_equipment("Magboots", /obj/item/clothing/shoes/magboots, 10, 300),