mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Merge pull request #10310 from Novacat/nova-pathfinder
Mecha Balance and Fighter Fixes
This commit is contained in:
committed by
Chompstation Bot
parent
bddfb995a2
commit
2d4853ca4f
@@ -16,6 +16,7 @@
|
|||||||
dir_in = null //Don't reset direction when empty
|
dir_in = null //Don't reset direction when empty
|
||||||
|
|
||||||
step_in = 2 //Fast
|
step_in = 2 //Fast
|
||||||
|
step_energy_drain = 0 //These should use fuel instead of energy
|
||||||
|
|
||||||
health = 400
|
health = 400
|
||||||
maxhealth = 400
|
maxhealth = 400
|
||||||
@@ -38,6 +39,14 @@
|
|||||||
max_universal_equip = 1
|
max_universal_equip = 1
|
||||||
max_special_equip = 1
|
max_special_equip = 1
|
||||||
|
|
||||||
|
starting_components = list(
|
||||||
|
/obj/item/mecha_parts/component/hull/lightweight,
|
||||||
|
/obj/item/mecha_parts/component/actuator,
|
||||||
|
/obj/item/mecha_parts/component/armor,
|
||||||
|
/obj/item/mecha_parts/component/gas,
|
||||||
|
/obj/item/mecha_parts/component/electrical
|
||||||
|
)
|
||||||
|
|
||||||
/obj/mecha/combat/fighter/Initialize()
|
/obj/mecha/combat/fighter/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
ion_trail = new /datum/effect/effect/system/ion_trail_follow()
|
ion_trail = new /datum/effect/effect/system/ion_trail_follow()
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
/obj/mecha/combat/fighter
|
|
||||||
starting_components = list(
|
|
||||||
/obj/item/mecha_parts/component/hull/lightweight,
|
|
||||||
/obj/item/mecha_parts/component/actuator,
|
|
||||||
/obj/item/mecha_parts/component/armor,
|
|
||||||
/obj/item/mecha_parts/component/gas,
|
|
||||||
/obj/item/mecha_parts/component/electrical
|
|
||||||
)
|
|
||||||
@@ -1450,16 +1450,28 @@
|
|||||||
|
|
||||||
else if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != I_HURT)
|
else if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != I_HURT)
|
||||||
var/obj/item/weapon/weldingtool/WT = W
|
var/obj/item/weapon/weldingtool/WT = W
|
||||||
|
var/obj/item/mecha_parts/component/hull/HC = internal_components[MECH_HULL]
|
||||||
|
var/obj/item/mecha_parts/component/armor/AC = internal_components[MECH_ARMOR]
|
||||||
if (WT.remove_fuel(0,user))
|
if (WT.remove_fuel(0,user))
|
||||||
if (hasInternalDamage(MECHA_INT_TANK_BREACH))
|
if (hasInternalDamage(MECHA_INT_TANK_BREACH))
|
||||||
clearInternalDamage(MECHA_INT_TANK_BREACH)
|
clearInternalDamage(MECHA_INT_TANK_BREACH)
|
||||||
to_chat(user, "<span class='notice'>You repair the damaged gas tank.</span>")
|
to_chat(user, "<span class='notice'>You repair the damaged gas tank.</span>")
|
||||||
else
|
else
|
||||||
return
|
return
|
||||||
if(src.health<initial(src.health))
|
if((src.health<initial(src.health)) || (HC.integrity<HC.max_integrity) || (AC.integrity<AC.max_integrity))
|
||||||
to_chat(user, "<span class='notice'>You repair some damage to [src.name].</span>")
|
if(src.health<initial(src.health))
|
||||||
src.health += min(10, initial(src.health)-src.health)
|
to_chat(user, "<span class='notice'>You repair some damage to [src.name].</span>")
|
||||||
update_damage_alerts()
|
src.health += min(10, initial(src.health)-src.health)
|
||||||
|
update_damage_alerts()
|
||||||
|
else if(HC.integrity<HC.max_integrity)
|
||||||
|
to_chat(user, "<span class='notice'>You repair some damage to [HC.name].</span>")
|
||||||
|
HC.integrity += min(10, HC.max_integrity-HC.integrity)
|
||||||
|
update_damage_alerts()
|
||||||
|
else if(AC.integrity<AC.max_integrity)
|
||||||
|
to_chat(user, "<span class='notice'>You repair some damage to [AC.name].</span>")
|
||||||
|
AC.integrity += min(10, AC.max_integrity-AC.integrity)
|
||||||
|
update_damage_alerts()
|
||||||
|
|
||||||
else
|
else
|
||||||
to_chat(user, "The [src.name] is at full integrity")
|
to_chat(user, "The [src.name] is at full integrity")
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -578,6 +578,7 @@
|
|||||||
materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, MAT_ALUMINIUM = 3750)
|
materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, MAT_ALUMINIUM = 3750)
|
||||||
build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid
|
build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid
|
||||||
|
|
||||||
|
/* These are way too OP to be buildable
|
||||||
/datum/design/item/mecha/combat_shield
|
/datum/design/item/mecha/combat_shield
|
||||||
name = "linear combat shield"
|
name = "linear combat shield"
|
||||||
desc = "Linear shield projector. Deploys a large, familiar, and rectangular shield in one direction at a time."
|
desc = "Linear shield projector. Deploys a large, familiar, and rectangular shield in one direction at a time."
|
||||||
@@ -593,6 +594,7 @@
|
|||||||
req_tech = list(TECH_PHORON = 3, TECH_MAGNET = 6, TECH_ILLEGAL = 4)
|
req_tech = list(TECH_PHORON = 3, TECH_MAGNET = 6, TECH_ILLEGAL = 4)
|
||||||
materials = list(DEFAULT_WALL_MATERIAL = 8000, "gold" = 2000, "silver" = 3000, "phoron" = 5000, "glass" = 3750)
|
materials = list(DEFAULT_WALL_MATERIAL = 8000, "gold" = 2000, "silver" = 3000, "phoron" = 5000, "glass" = 3750)
|
||||||
build_path = /obj/item/mecha_parts/mecha_equipment/omni_shield
|
build_path = /obj/item/mecha_parts/mecha_equipment/omni_shield
|
||||||
|
*/
|
||||||
|
|
||||||
/datum/design/item/mecha/crisis_drone
|
/datum/design/item/mecha/crisis_drone
|
||||||
name = "Crisis Drone"
|
name = "Crisis Drone"
|
||||||
|
|||||||
@@ -184,10 +184,10 @@
|
|||||||
shuttle_tag = "Debris Carrier"
|
shuttle_tag = "Debris Carrier"
|
||||||
req_one_access = list()
|
req_one_access = list()
|
||||||
|
|
||||||
/obj/mecha/combat/fighter/baron/loaded/busted
|
/obj/mecha/combat/fighter/baron/busted
|
||||||
starting_components = list(/obj/item/mecha_parts/component/hull/lightweight,/obj/item/mecha_parts/component/actuator/hispeed,/obj/item/mecha_parts/component/armor,/obj/item/mecha_parts/component/gas,/obj/item/mecha_parts/component/electrical/high_current)
|
starting_components = list(/obj/item/mecha_parts/component/hull/lightweight,/obj/item/mecha_parts/component/actuator/hispeed,/obj/item/mecha_parts/component/armor,/obj/item/mecha_parts/component/gas,/obj/item/mecha_parts/component/electrical/high_current)
|
||||||
|
|
||||||
/obj/mecha/combat/fighter/baron/loaded/busted/Initialize()
|
/obj/mecha/combat/fighter/baron/busted/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
health = round(rand(50,120))
|
health = round(rand(50,120))
|
||||||
cell?.charge = 0
|
cell?.charge = 0
|
||||||
|
|||||||
@@ -1561,12 +1561,13 @@
|
|||||||
/obj/machinery/mech_recharger{
|
/obj/machinery/mech_recharger{
|
||||||
icon = 'icons/turf/shuttle_alien_blue.dmi'
|
icon = 'icons/turf/shuttle_alien_blue.dmi'
|
||||||
},
|
},
|
||||||
/obj/mecha/combat/fighter/baron{
|
/obj/mecha/combat/fighter/baron/loaded{
|
||||||
ground_capable = 1;
|
ground_capable = 1;
|
||||||
health = 800;
|
health = 600;
|
||||||
internal_damage_threshold = 100;
|
maxhealth = 600;
|
||||||
maxhealth = 800;
|
name = "Duke";
|
||||||
name = "Panther"
|
desc = "A heavily modified Baron-class fighter from the commonwealth. It has been retrofitted with heavier armor and additional maneuvering thrusters. Can be used in atmospheric operations.";
|
||||||
|
starting_components = list(/obj/item/mecha_parts/component/hull/lightweight,/obj/item/mecha_parts/component/actuator/hispeed,/obj/item/mecha_parts/component/armor/military,/obj/item/mecha_parts/component/gas/reinforced,/obj/item/mecha_parts/component/electrical)
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/reinforced,
|
/turf/simulated/floor/reinforced,
|
||||||
/area/shuttle/tabiranth)
|
/area/shuttle/tabiranth)
|
||||||
|
|||||||
@@ -4199,7 +4199,6 @@
|
|||||||
"sM" = (
|
"sM" = (
|
||||||
/obj/structure/table/rack,
|
/obj/structure/table/rack,
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/explosive,
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/explosive,
|
||||||
/obj/item/mecha_parts/mecha_equipment/omni_shield,
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/repair_droid,
|
/obj/item/mecha_parts/mecha_equipment/repair_droid,
|
||||||
/obj/machinery/firealarm/alarms_hidden{
|
/obj/machinery/firealarm/alarms_hidden{
|
||||||
pixel_y = 26
|
pixel_y = 26
|
||||||
|
|||||||
@@ -1109,7 +1109,7 @@
|
|||||||
/turf/simulated/floor/reinforced/airless,
|
/turf/simulated/floor/reinforced/airless,
|
||||||
/area/submap/debrisfield/tinyshuttle/hangar)
|
/area/submap/debrisfield/tinyshuttle/hangar)
|
||||||
"bW" = (
|
"bW" = (
|
||||||
/obj/mecha/combat/fighter/baron/loaded/busted{
|
/obj/mecha/combat/fighter/baron/busted{
|
||||||
dir = 8;
|
dir = 8;
|
||||||
dir_in = 8
|
dir_in = 8
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1017,7 +1017,6 @@
|
|||||||
#include "code\game\mecha\combat\combat.dm"
|
#include "code\game\mecha\combat\combat.dm"
|
||||||
#include "code\game\mecha\combat\durand.dm"
|
#include "code\game\mecha\combat\durand.dm"
|
||||||
#include "code\game\mecha\combat\fighter.dm"
|
#include "code\game\mecha\combat\fighter.dm"
|
||||||
#include "code\game\mecha\combat\fighter_vr.dm"
|
|
||||||
#include "code\game\mecha\combat\gorilla.dm"
|
#include "code\game\mecha\combat\gorilla.dm"
|
||||||
#include "code\game\mecha\combat\gygax.dm"
|
#include "code\game\mecha\combat\gygax.dm"
|
||||||
#include "code\game\mecha\combat\marauder.dm"
|
#include "code\game\mecha\combat\marauder.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user