power pass

mechs actually use power when moving
mining z check isn't falsely inverted
actuator overload cost returned to pre accidental buff levels
correct value for step energy cost now on mechs
parts are now less wacky nor broken for energy cost
This commit is contained in:
DeltaFire
2022-05-23 02:16:45 +02:00
parent 18599a274c
commit 9c2da5bcf4
7 changed files with 16 additions and 10 deletions

View File

@@ -272,7 +272,7 @@
/obj/vehicle/sealed/mecha/proc/update_part_values() ///Updates the values given by scanning module and capacitor tier, called when a part is removed or inserted.
if(scanmod)
normal_step_energy_drain = 20 - (5 * scanmod.rating) //10 is normal, so on lowest part its worse, on second its ok and on higher its real good up to 0 on best
normal_step_energy_drain = initial(normal_step_energy_drain) * (1.5 / (scanmod.rating - 0.5)) //movement power cost is 3x of default at T1, 1x at T2, 0.6x at T3 and 0.4x at T4
step_energy_drain = normal_step_energy_drain
else
normal_step_energy_drain = 500
@@ -641,6 +641,9 @@
if(!Process_Spacemove(direction))
return FALSE
if(!has_charge(step_energy_drain))
if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_MECHA_MESSAGE))
to_chat(occupants, "[icon2html(src, occupants)]<span class='warning'>Insufficient power to move!</span>")
TIMER_COOLDOWN_START(src, COOLDOWN_MECHA_MESSAGE, 2 SECONDS)
return FALSE
if(zoom_mode)
to_chat(occupants, "[icon2html(src, occupants)]<span class='warning'>Unable to move while in zoom mode!</span>")
@@ -651,7 +654,7 @@
if(!scanmod || !capacitor)
to_chat(occupants, "[icon2html(src, occupants)]<span class='warning'>Missing [scanmod? "capacitor" : "scanning module"].</span>")
return FALSE
if(lavaland_only && is_mining_level(z))
if(lavaland_only && !is_mining_level(z))
to_chat(occupants, "[icon2html(src, occupants)]<span class='warning'>Invalid Environment.</span>")
return FALSE
@@ -683,6 +686,7 @@
return TRUE
set_glide_size(DELAY_TO_GLIDE_SIZE(movedelay))
use_power(step_energy_drain)
//Otherwise just walk normally
. = step(src,direction, dir)

View File

@@ -9,12 +9,13 @@
deflect_chance = 5
armor = list(MELEE = 25, BULLET = 20, LASER = 30, ENERGY = 15, BOMB = 0, BIO = 0, RAD = 0, FIRE = 100, ACID = 100)
max_temperature = 25000
leg_overload_coeff = 80
leg_overload_coeff = 300
overload_step_energy_drain_min = 300
force = 25
wreckage = /obj/structure/mecha_wreckage/gygax
internal_damage_threshold = 35
max_equip = 3
step_energy_drain = 3
normal_step_energy_drain = 3
/obj/vehicle/sealed/mecha/combat/gygax/dark
desc = "A lightweight exosuit, painted in a dark scheme. This model appears to have some modifications."
@@ -24,7 +25,8 @@
deflect_chance = 20
armor = list(MELEE = 40, BULLET = 40, LASER = 50, ENERGY = 35, BOMB = 20, BIO = 0, RAD =20, FIRE = 100, ACID = 100)
max_temperature = 35000
leg_overload_coeff = 70
leg_overload_coeff = 100
overload_step_energy_drain_min = 100
force = 30
operation_req_access = list(ACCESS_SYNDICATE)
internals_req_access = list(ACCESS_SYNDICATE)

View File

@@ -11,7 +11,7 @@
max_temperature = 25000
wreckage = /obj/structure/mecha_wreckage/odysseus
internal_damage_threshold = 35
step_energy_drain = 6
normal_step_energy_drain = 6
infra_luminosity = 6
internals_req_access = list(ACCESS_ROBOTICS, ACCESS_MEDICAL)

View File

@@ -4,7 +4,7 @@
icon_state = "phazon"
movedelay = 2
dir_in = 2 //Facing South.
step_energy_drain = 3
normal_step_energy_drain = 3
max_integrity = 200
deflect_chance = 30
armor = list(MELEE = 30, BULLET = 30, LASER = 30, ENERGY = 30, BOMB = 30, BIO = 0, RAD = 50, FIRE = 100, ACID = 100)

View File

@@ -14,7 +14,7 @@
mecha_flags = CANSTRAFE | IS_ENCLOSED | HAS_LIGHTS
internal_damage_threshold = 25
max_equip = 2
step_energy_drain = 3
normal_step_energy_drain = 3
color = "#87878715"
stepsound = null
turnsound = null

View File

@@ -9,7 +9,7 @@
wreckage = /obj/structure/mecha_wreckage/odysseus
internal_damage_threshold = 35
deflect_chance = 15
step_energy_drain = 6
normal_step_energy_drain = 6
internals_req_access = list(ACCESS_ROBOTICS, ACCESS_MEDICAL)
/obj/vehicle/sealed/mecha/medical/odysseus/moved_inside(mob/living/carbon/human/H)

View File

@@ -96,7 +96,7 @@
movedelay = 4
lights_power = 7
wreckage = /obj/structure/mecha_wreckage/ripley/deathripley
step_energy_drain = 0
normal_step_energy_drain = 0
enclosed = TRUE
enter_delay = 40
silicon_icon_state = null