diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index c75ff304922..471a24078fb 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -46,17 +46,13 @@ ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/teleporter + ME = new /obj/item/mecha_parts/mecha_equipment/teleporter/precise ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay ME.attach(src) -/obj/mecha/combat/gygax/dark/add_cell(var/obj/item/weapon/stock_parts/cell/C=null) - if(C) - C.forceMove(src) - cell = C - return - cell = new(src) +/obj/mecha/combat/gygax/dark/add_cell() + cell = new /obj/item/weapon/stock_parts/cell/bluespace(src) cell.charge = 30000 cell.maxcharge = 30000 diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index cecbc1e5b13..97b442a51da 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -50,6 +50,11 @@ force = 55 max_equip = 5 +/obj/mecha/combat/marauder/seraph/add_cell() + cell = new /obj/item/weapon/stock_parts/cell/bluespace(src) + cell.charge = 40000 + cell.maxcharge = 40000 + /obj/mecha/combat/marauder/seraph/loaded/New() ..()//Let it equip whatever is needed. var/obj/item/mecha_parts/mecha_equipment/ME @@ -61,7 +66,7 @@ ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/teleporter(src) + ME = new /obj/item/mecha_parts/mecha_equipment/teleporter/precise(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay(src) ME.attach(src) diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm index 184766dc3ed..9e2a754bd4c 100644 --- a/code/game/mecha/equipment/tools/other_tools.dm +++ b/code/game/mecha/equipment/tools/other_tools.dm @@ -9,17 +9,25 @@ icon_state = "mecha_teleport" origin_tech = "bluespace=10" equip_cooldown = 150 - energy_drain = 1000 + energy_drain = 8000 range = RANGED + var/tele_precision = 4 /obj/item/mecha_parts/mecha_equipment/teleporter/action(atom/target) if(!action_checks(target) || !is_teleport_allowed(loc.z)) return var/turf/T = get_turf(target) if(T) - do_teleport(chassis, T, 4) + chassis.use_power(energy_drain) + do_teleport(chassis, T, tele_precision) return 1 +/obj/item/mecha_parts/mecha_equipment/teleporter/precise + name = "upgraded teleporter" + desc = "An exosuit module that allows exosuits to teleport to any position in view. This is the high-precision, energy-efficient version." + origin_tech = "bluespace=13" + energy_drain = 1000 + tele_precision = 1 ////////////////////////////////////////////// WORMHOLE GENERATOR //////////////////////////////////////////