mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-20 19:43:13 +01:00
Merge pull request #7722 from fernerr/191217-sprites_mecha
New Mech sprites and some other tweaks
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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),
|
||||
|
||||
Reference in New Issue
Block a user