@@ -3,9 +3,9 @@
|
|||||||
internal_damage_threshold = 50
|
internal_damage_threshold = 50
|
||||||
armor = list("melee" = 30, "bullet" = 30, "laser" = 15, "energy" = 20, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
|
armor = list("melee" = 30, "bullet" = 30, "laser" = 15, "energy" = 20, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
|
||||||
mouse_pointer = 'icons/mecha/mecha_mouse.dmi'
|
mouse_pointer = 'icons/mecha/mecha_mouse.dmi'
|
||||||
var/spawn_tracked = TRUE
|
|
||||||
|
|
||||||
/obj/mecha/combat/Initialize()
|
/obj/mecha/combat/proc/max_ammo() //Max the ammo stored for Nuke Ops mechs, or anyone else that calls this
|
||||||
. = ..()
|
for(var/obj/item/I in equipment)
|
||||||
if(spawn_tracked)
|
if(istype(I, /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/))
|
||||||
trackers += new /obj/item/mecha_parts/mecha_tracking(src)
|
var/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gun = I
|
||||||
|
gun.projectiles_cache = gun.projectiles_cache_max
|
||||||
@@ -30,7 +30,6 @@
|
|||||||
internals_req_access = list(ACCESS_SYNDICATE)
|
internals_req_access = list(ACCESS_SYNDICATE)
|
||||||
wreckage = /obj/structure/mecha_wreckage/gygax/dark
|
wreckage = /obj/structure/mecha_wreckage/gygax/dark
|
||||||
max_equip = 4
|
max_equip = 4
|
||||||
spawn_tracked = FALSE
|
|
||||||
|
|
||||||
/obj/mecha/combat/gygax/dark/loaded/Initialize()
|
/obj/mecha/combat/gygax/dark/loaded/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
@@ -42,6 +41,7 @@
|
|||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
|
ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
|
||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
|
max_ammo()
|
||||||
|
|
||||||
/obj/mecha/combat/gygax/dark/add_cell(obj/item/stock_parts/cell/C=null)
|
/obj/mecha/combat/gygax/dark/add_cell(obj/item/stock_parts/cell/C=null)
|
||||||
if(C)
|
if(C)
|
||||||
|
|||||||
@@ -17,7 +17,6 @@
|
|||||||
force = 45
|
force = 45
|
||||||
max_equip = 4
|
max_equip = 4
|
||||||
bumpsmash = 1
|
bumpsmash = 1
|
||||||
spawn_tracked = FALSE
|
|
||||||
|
|
||||||
/obj/mecha/combat/marauder/GrantActions(mob/living/user, human_occupant = 0)
|
/obj/mecha/combat/marauder/GrantActions(mob/living/user, human_occupant = 0)
|
||||||
..()
|
..()
|
||||||
@@ -41,6 +40,7 @@
|
|||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
|
max_ammo()
|
||||||
|
|
||||||
/obj/mecha/combat/marauder/seraph
|
/obj/mecha/combat/marauder/seraph
|
||||||
desc = "Heavy-duty, command-type exosuit. This is a custom model, utilized only by high-ranking military personnel."
|
desc = "Heavy-duty, command-type exosuit. This is a custom model, utilized only by high-ranking military personnel."
|
||||||
@@ -68,6 +68,7 @@
|
|||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
|
max_ammo()
|
||||||
|
|
||||||
/obj/mecha/combat/marauder/mauler
|
/obj/mecha/combat/marauder/mauler
|
||||||
desc = "Heavy-duty, combat exosuit, developed off of the existing Marauder model."
|
desc = "Heavy-duty, combat exosuit, developed off of the existing Marauder model."
|
||||||
@@ -90,5 +91,6 @@
|
|||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src)
|
||||||
ME.attach(src)
|
ME.attach(src)
|
||||||
|
max_ammo()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
internals_req_access = list()
|
internals_req_access = list()
|
||||||
add_req_access = 0
|
add_req_access = 0
|
||||||
wreckage = /obj/structure/mecha_wreckage/durand/neovgre
|
wreckage = /obj/structure/mecha_wreckage/durand/neovgre
|
||||||
spawn_tracked = FALSE
|
|
||||||
|
|
||||||
/obj/mecha/combat/neovgre/GrantActions(mob/living/user, human_occupant = 0) //No Eject action for you sonny jim, your life for Ratvar!
|
/obj/mecha/combat/neovgre/GrantActions(mob/living/user, human_occupant = 0) //No Eject action for you sonny jim, your life for Ratvar!
|
||||||
internals_action.Grant(user, src)
|
internals_action.Grant(user, src)
|
||||||
|
|||||||
@@ -19,7 +19,6 @@
|
|||||||
stepsound = null
|
stepsound = null
|
||||||
turnsound = null
|
turnsound = null
|
||||||
opacity = 0
|
opacity = 0
|
||||||
spawn_tracked = FALSE
|
|
||||||
|
|
||||||
/obj/mecha/combat/reticence/loaded/Initialize()
|
/obj/mecha/combat/reticence/loaded/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|||||||
@@ -34,6 +34,19 @@
|
|||||||
return
|
return
|
||||||
if(!cargo_holder)
|
if(!cargo_holder)
|
||||||
return
|
return
|
||||||
|
if(ismecha(target))
|
||||||
|
var/obj/mecha/M = target
|
||||||
|
var/have_ammo
|
||||||
|
for(var/obj/item/mecha_ammo/box in cargo_holder.cargo)
|
||||||
|
if(istype(box, /obj/item/mecha_ammo) && box.rounds)
|
||||||
|
have_ammo = TRUE
|
||||||
|
if(M.ammo_resupply(box, chassis.occupant, TRUE))
|
||||||
|
return
|
||||||
|
if(have_ammo)
|
||||||
|
to_chat(chassis.occupant, "No further supplies can be provided to [M].")
|
||||||
|
else
|
||||||
|
to_chat(chassis.occupant, "No providable supplies found in cargo hold")
|
||||||
|
return
|
||||||
if(isobj(target))
|
if(isobj(target))
|
||||||
var/obj/O = target
|
var/obj/O = target
|
||||||
if(!O.anchored)
|
if(!O.anchored)
|
||||||
|
|||||||
@@ -0,0 +1,94 @@
|
|||||||
|
/obj/item/mecha_ammo
|
||||||
|
name = "generic ammo box"
|
||||||
|
desc = "A box of ammo for an unknown weapon."
|
||||||
|
w_class = WEIGHT_CLASS_BULKY
|
||||||
|
icon = 'icons/mecha/mecha_ammo.dmi'
|
||||||
|
icon_state = "empty"
|
||||||
|
lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi'
|
||||||
|
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
||||||
|
var/rounds = 0
|
||||||
|
var/round_term = "round"
|
||||||
|
var/direct_load //For weapons where we re-load the weapon itself rather than adding to the ammo storage.
|
||||||
|
var/load_audio = "sound/weapons/gun_magazine_insert_empty_1.ogg"
|
||||||
|
var/ammo_type
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/proc/update_name()
|
||||||
|
if(!rounds)
|
||||||
|
name = "empty ammo box"
|
||||||
|
desc = "An exosuit ammuniton box that has since been emptied. Please recycle."
|
||||||
|
icon_state = "empty"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/attack_self(mob/user)
|
||||||
|
..()
|
||||||
|
if(rounds)
|
||||||
|
to_chat(user, "<span class='warning'>You cannot flatten the ammo box until it's empty!</span>")
|
||||||
|
return
|
||||||
|
|
||||||
|
to_chat(user, "<span class='notice'>You fold [src] flat.</span>")
|
||||||
|
var/I = new /obj/item/stack/sheet/metal(user.loc)
|
||||||
|
qdel(src)
|
||||||
|
user.put_in_hands(I)
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/examine(mob/user)
|
||||||
|
. = ..()
|
||||||
|
if(rounds)
|
||||||
|
. += "There [rounds > 1?"are":"is"] [rounds] [round_term][rounds > 1?"s":""] left."
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/incendiary
|
||||||
|
name = "incendiary ammo"
|
||||||
|
desc = "A box of incendiary ammunition for use with exosuit weapons."
|
||||||
|
icon_state = "incendiary"
|
||||||
|
rounds = 24
|
||||||
|
ammo_type = "incendiary"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/scattershot
|
||||||
|
name = "scattershot ammo"
|
||||||
|
desc = "A box of scaled-up buckshot, for use in exosuit shotguns."
|
||||||
|
icon_state = "scattershot"
|
||||||
|
rounds = 40
|
||||||
|
ammo_type = "scattershot"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/lmg
|
||||||
|
name = "machine gun ammo"
|
||||||
|
desc = "A box of linked ammunition, designed for the Ultra AC 2 exosuit weapon."
|
||||||
|
icon_state = "lmg"
|
||||||
|
rounds = 300
|
||||||
|
ammo_type = "lmg"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/missiles_br
|
||||||
|
name = "breaching missiles"
|
||||||
|
desc = "A box of large missiles, ready for loading into a BRM-6 exosuit missile rack."
|
||||||
|
icon_state = "missile_br"
|
||||||
|
rounds = 6
|
||||||
|
round_term = "missile"
|
||||||
|
direct_load = TRUE
|
||||||
|
load_audio = "sound/weapons/bulletinsert.ogg"
|
||||||
|
ammo_type = "missiles_br"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/missiles_he
|
||||||
|
name = "anti-armor missiles"
|
||||||
|
desc = "A box of large missiles, ready for loading into an SRM-8 exosuit missile rack."
|
||||||
|
icon_state = "missile_he"
|
||||||
|
rounds = 8
|
||||||
|
round_term = "missile"
|
||||||
|
direct_load = TRUE
|
||||||
|
load_audio = "sound/weapons/bulletinsert.ogg"
|
||||||
|
ammo_type = "missiles_he"
|
||||||
|
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/flashbang
|
||||||
|
name = "launchable flashbangs"
|
||||||
|
desc = "A box of smooth flashbangs, for use with a large exosuit launcher. Cannot be primed by hand."
|
||||||
|
icon_state = "flashbang"
|
||||||
|
rounds = 6
|
||||||
|
round_term = "grenade"
|
||||||
|
ammo_type = "flashbang"
|
||||||
|
|
||||||
|
/obj/item/mecha_ammo/clusterbang
|
||||||
|
name = "launchable flashbang clusters"
|
||||||
|
desc = "A box of clustered flashbangs, for use with a specialized exosuit cluster launcher. Cannot be primed by hand."
|
||||||
|
icon_state = "clusterbang"
|
||||||
|
rounds = 3
|
||||||
|
round_term = "cluster"
|
||||||
|
direct_load = TRUE
|
||||||
|
ammo_type = "clusterbang"
|
||||||
@@ -196,7 +196,11 @@
|
|||||||
name = "general ballistic weapon"
|
name = "general ballistic weapon"
|
||||||
fire_sound = 'sound/weapons/gunshot.ogg'
|
fire_sound = 'sound/weapons/gunshot.ogg'
|
||||||
var/projectiles
|
var/projectiles
|
||||||
|
var/projectiles_cache //ammo to be loaded in, if possible.
|
||||||
|
var/projectiles_cache_max
|
||||||
var/projectile_energy_cost
|
var/projectile_energy_cost
|
||||||
|
var/disabledreload //For weapons with no cache (like the rockets) which are reloaded by hand
|
||||||
|
var/ammo_type
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/get_shot_amount()
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/get_shot_amount()
|
||||||
return min(projectiles, projectiles_per_shot)
|
return min(projectiles, projectiles_per_shot)
|
||||||
@@ -209,19 +213,32 @@
|
|||||||
return 1
|
return 1
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/get_equip_info()
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/get_equip_info()
|
||||||
return "[..()] \[[src.projectiles]\][(src.projectiles < initial(src.projectiles))?" - <a href='?src=[REF(src)];rearm=1'>Rearm</a>":null]"
|
return "[..()] \[[src.projectiles][projectiles_cache_max &&!projectile_energy_cost?"/[projectiles_cache]":""]\][!disabledreload &&(src.projectiles < initial(src.projectiles))?" - <a href='?src=[REF(src)];rearm=1'>Rearm</a>":null]"
|
||||||
|
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/rearm()
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/rearm()
|
||||||
if(projectiles < initial(projectiles))
|
if(projectiles < initial(projectiles))
|
||||||
var/projectiles_to_add = initial(projectiles) - projectiles
|
var/projectiles_to_add = initial(projectiles) - projectiles
|
||||||
while(chassis.get_charge() >= projectile_energy_cost && projectiles_to_add)
|
|
||||||
projectiles++
|
if(projectile_energy_cost)
|
||||||
projectiles_to_add--
|
while(chassis.get_charge() >= projectile_energy_cost && projectiles_to_add)
|
||||||
chassis.use_power(projectile_energy_cost)
|
projectiles++
|
||||||
send_byjax(chassis.occupant,"exosuit.browser","[REF(src)]",src.get_equip_info())
|
projectiles_to_add--
|
||||||
mecha_log_message("Rearmed [src.name].")
|
chassis.use_power(projectile_energy_cost)
|
||||||
return 1
|
|
||||||
|
else
|
||||||
|
if(!projectiles_cache)
|
||||||
|
return FALSE
|
||||||
|
if(projectiles_to_add <= projectiles_cache)
|
||||||
|
projectiles = projectiles + projectiles_to_add
|
||||||
|
projectiles_cache = projectiles_cache - projectiles_to_add
|
||||||
|
else
|
||||||
|
projectiles = projectiles + projectiles_cache
|
||||||
|
projectiles_cache = 0
|
||||||
|
|
||||||
|
send_byjax(chassis.occupant,"exosuit.browser","[REF(src)]",src.get_equip_info())
|
||||||
|
log_message("Rearmed [src.name].", LOG_MECHA)
|
||||||
|
return TRUE
|
||||||
|
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/needs_rearm()
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/needs_rearm()
|
||||||
@@ -249,8 +266,10 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
projectile = /obj/item/projectile/bullet/incendiary/fnx99
|
projectile = /obj/item/projectile/bullet/incendiary/fnx99
|
||||||
projectiles = 24
|
projectiles = 24
|
||||||
projectile_energy_cost = 15
|
projectiles_cache = 24
|
||||||
|
projectiles_cache_max = 96
|
||||||
harmful = TRUE
|
harmful = TRUE
|
||||||
|
ammo_type = "incendiary"
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced
|
||||||
name = "\improper S.H.H. \"Quietus\" Carbine"
|
name = "\improper S.H.H. \"Quietus\" Carbine"
|
||||||
@@ -270,10 +289,12 @@
|
|||||||
equip_cooldown = 20
|
equip_cooldown = 20
|
||||||
projectile = /obj/item/projectile/bullet/scattershot
|
projectile = /obj/item/projectile/bullet/scattershot
|
||||||
projectiles = 40
|
projectiles = 40
|
||||||
projectile_energy_cost = 25
|
projectiles_cache = 40
|
||||||
|
projectiles_cache_max = 160
|
||||||
projectiles_per_shot = 4
|
projectiles_per_shot = 4
|
||||||
variance = 25
|
variance = 25
|
||||||
harmful = TRUE
|
harmful = TRUE
|
||||||
|
ammo_type = "scattershot"
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/seedscatter
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/seedscatter
|
||||||
name = "\improper Melon Seed \"Scattershot\""
|
name = "\improper Melon Seed \"Scattershot\""
|
||||||
@@ -294,23 +315,42 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
projectile = /obj/item/projectile/bullet/lmg
|
projectile = /obj/item/projectile/bullet/lmg
|
||||||
projectiles = 300
|
projectiles = 300
|
||||||
projectile_energy_cost = 20
|
projectiles_cache = 300
|
||||||
|
projectiles_cache_max = 1200
|
||||||
projectiles_per_shot = 3
|
projectiles_per_shot = 3
|
||||||
variance = 6
|
variance = 6
|
||||||
randomspread = 1
|
randomspread = 1
|
||||||
projectile_delay = 2
|
projectile_delay = 2
|
||||||
harmful = TRUE
|
harmful = TRUE
|
||||||
|
ammo_type = "lmg"
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack
|
||||||
name = "\improper SRM-8 missile rack"
|
name = "\improper SRM-8 missile rack"
|
||||||
desc = "A weapon for combat exosuits. Shoots light explosive missiles."
|
desc = "A weapon for combat exosuits. Launches light explosive missiles."
|
||||||
icon_state = "mecha_missilerack"
|
icon_state = "mecha_missilerack"
|
||||||
projectile = /obj/item/projectile/bullet/a84mm_he
|
projectile = /obj/item/projectile/bullet/a84mm_he
|
||||||
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
||||||
projectiles = 8
|
projectiles = 8
|
||||||
projectile_energy_cost = 1000
|
projectiles_cache = 0
|
||||||
|
projectiles_cache_max = 0
|
||||||
|
disabledreload = TRUE
|
||||||
equip_cooldown = 60
|
equip_cooldown = 60
|
||||||
harmful = TRUE
|
harmful = TRUE
|
||||||
|
ammo_type = "missiles_he"
|
||||||
|
|
||||||
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/breaching
|
||||||
|
name = "\improper BRM-6 missile rack"
|
||||||
|
desc = "A weapon for combat exosuits. Launches low-explosive breaching missiles designed to explode only when striking a sturdy target."
|
||||||
|
icon_state = "mecha_missilerack_six"
|
||||||
|
projectile = /obj/item/projectile/bullet/a84mm_br
|
||||||
|
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
||||||
|
projectiles = 6
|
||||||
|
projectiles_cache = 0
|
||||||
|
projectiles_cache_max = 0
|
||||||
|
disabledreload = TRUE
|
||||||
|
equip_cooldown = 60
|
||||||
|
harmful = TRUE
|
||||||
|
ammo_type = "missiles_br"
|
||||||
|
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher
|
||||||
@@ -341,10 +381,12 @@
|
|||||||
projectile = /obj/item/grenade/flashbang
|
projectile = /obj/item/grenade/flashbang
|
||||||
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
||||||
projectiles = 6
|
projectiles = 6
|
||||||
|
projectiles_cache = 6
|
||||||
|
projectiles_cache_max = 24
|
||||||
missile_speed = 1.5
|
missile_speed = 1.5
|
||||||
projectile_energy_cost = 800
|
|
||||||
equip_cooldown = 60
|
equip_cooldown = 60
|
||||||
var/det_time = 20
|
var/det_time = 20
|
||||||
|
ammo_type = "flashbang"
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang/proj_init(var/obj/item/grenade/flashbang/F)
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang/proj_init(var/obj/item/grenade/flashbang/F)
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
@@ -356,9 +398,12 @@
|
|||||||
name = "\improper SOB-3 grenade launcher"
|
name = "\improper SOB-3 grenade launcher"
|
||||||
desc = "A weapon for combat exosuits. Launches primed clusterbangs. You monster."
|
desc = "A weapon for combat exosuits. Launches primed clusterbangs. You monster."
|
||||||
projectiles = 3
|
projectiles = 3
|
||||||
|
projectiles_cache = 0
|
||||||
|
projectiles_cache_max = 0
|
||||||
|
disabledreload = TRUE
|
||||||
projectile = /obj/item/grenade/clusterbuster
|
projectile = /obj/item/grenade/clusterbuster
|
||||||
projectile_energy_cost = 1600 //getting off cheap seeing as this is 3 times the flashbangs held in the grenade launcher.
|
|
||||||
equip_cooldown = 90
|
equip_cooldown = 90
|
||||||
|
ammo_type = "clusterbang"
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/banana_mortar
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/banana_mortar
|
||||||
name = "banana mortar"
|
name = "banana mortar"
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
"H.O.N.K",
|
"H.O.N.K",
|
||||||
"Phazon",
|
"Phazon",
|
||||||
"Exosuit Equipment",
|
"Exosuit Equipment",
|
||||||
|
"Exosuit Ammunition",
|
||||||
"Cyborg Upgrade Modules",
|
"Cyborg Upgrade Modules",
|
||||||
"Misc"
|
"Misc"
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1070,3 +1070,53 @@
|
|||||||
if(occupant_sight_flags)
|
if(occupant_sight_flags)
|
||||||
if(user == occupant)
|
if(user == occupant)
|
||||||
user.sight |= occupant_sight_flags
|
user.sight |= occupant_sight_flags
|
||||||
|
|
||||||
|
///////////////////////
|
||||||
|
////// Ammo stuff /////
|
||||||
|
///////////////////////
|
||||||
|
|
||||||
|
/obj/mecha/proc/ammo_resupply(var/obj/item/mecha_ammo/A, mob/user,var/fail_chat_override = FALSE)
|
||||||
|
if(!A.rounds)
|
||||||
|
if(!fail_chat_override)
|
||||||
|
to_chat(user, "<span class='warning'>This box of ammo is empty!</span>")
|
||||||
|
return FALSE
|
||||||
|
var/ammo_needed
|
||||||
|
var/found_gun
|
||||||
|
for(var/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gun in equipment)
|
||||||
|
ammo_needed = 0
|
||||||
|
|
||||||
|
if(istype(gun, /obj/item/mecha_parts/mecha_equipment/weapon/ballistic) && gun.ammo_type == A.ammo_type)
|
||||||
|
found_gun = TRUE
|
||||||
|
if(A.direct_load)
|
||||||
|
ammo_needed = initial(gun.projectiles) - gun.projectiles
|
||||||
|
else
|
||||||
|
ammo_needed = gun.projectiles_cache_max - gun.projectiles_cache
|
||||||
|
|
||||||
|
if(ammo_needed)
|
||||||
|
if(ammo_needed < A.rounds)
|
||||||
|
if(A.direct_load)
|
||||||
|
gun.projectiles = gun.projectiles + ammo_needed
|
||||||
|
else
|
||||||
|
gun.projectiles_cache = gun.projectiles_cache + ammo_needed
|
||||||
|
playsound(get_turf(user),A.load_audio,50,1)
|
||||||
|
to_chat(user, "<span class='notice'>You add [ammo_needed] [A.round_term][ammo_needed > 1?"s":""] to the [gun.name]</span>")
|
||||||
|
A.rounds = A.rounds - ammo_needed
|
||||||
|
A.update_name()
|
||||||
|
return TRUE
|
||||||
|
|
||||||
|
else
|
||||||
|
if(A.direct_load)
|
||||||
|
gun.projectiles = gun.projectiles + A.rounds
|
||||||
|
else
|
||||||
|
gun.projectiles_cache = gun.projectiles_cache + A.rounds
|
||||||
|
playsound(get_turf(user),A.load_audio,50,1)
|
||||||
|
to_chat(user, "<span class='notice'>You add [A.rounds] [A.round_term][A.rounds > 1?"s":""] to the [gun.name]</span>")
|
||||||
|
A.rounds = 0
|
||||||
|
A.update_name()
|
||||||
|
return TRUE
|
||||||
|
if(!fail_chat_override)
|
||||||
|
if(found_gun)
|
||||||
|
to_chat(user, "<span class='notice'>You can't fit any more ammo of this type!</span>")
|
||||||
|
else
|
||||||
|
to_chat(user, "<span class='notice'>None of the equipment on this exosuit can use this ammo!</span>")
|
||||||
|
return FALSE
|
||||||
|
|||||||
@@ -172,6 +172,10 @@
|
|||||||
to_chat(user, "[src]-[W] interface initialization failed.")
|
to_chat(user, "[src]-[W] interface initialization failed.")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
if(istype(W, /obj/item/mecha_ammo))
|
||||||
|
ammo_resupply(W, user)
|
||||||
|
return
|
||||||
|
|
||||||
if(istype(W, /obj/item/mecha_parts/mecha_equipment))
|
if(istype(W, /obj/item/mecha_parts/mecha_equipment))
|
||||||
var/obj/item/mecha_parts/mecha_equipment/E = W
|
var/obj/item/mecha_parts/mecha_equipment/E = W
|
||||||
spawn()
|
spawn()
|
||||||
|
|||||||
@@ -528,6 +528,31 @@
|
|||||||
for(var/i in 1 to 9)
|
for(var/i in 1 to 9)
|
||||||
new /obj/item/ammo_box/magazine/smgm45(src)
|
new /obj/item/ammo_box/magazine/smgm45(src)
|
||||||
|
|
||||||
|
/obj/item/storage/backpack/duffelbag/syndie/ammo/dark_gygax
|
||||||
|
desc = "A large duffel bag, packed to the brim with various exosuit ammo."
|
||||||
|
|
||||||
|
/obj/item/storage/backpack/duffelbag/syndie/ammo/dark_gygax/PopulateContents()
|
||||||
|
new /obj/item/mecha_ammo/incendiary(src)
|
||||||
|
new /obj/item/mecha_ammo/incendiary(src)
|
||||||
|
new /obj/item/mecha_ammo/incendiary(src)
|
||||||
|
new /obj/item/mecha_ammo/flashbang(src)
|
||||||
|
new /obj/item/mecha_ammo/flashbang(src)
|
||||||
|
new /obj/item/mecha_ammo/flashbang(src)
|
||||||
|
|
||||||
|
/obj/item/storage/backpack/duffelbag/syndie/ammo/mauler
|
||||||
|
desc = "A large duffel bag, packed to the brim with various exosuit ammo."
|
||||||
|
|
||||||
|
/obj/item/storage/backpack/duffelbag/syndie/ammo/mauler/PopulateContents()
|
||||||
|
new /obj/item/mecha_ammo/lmg(src)
|
||||||
|
new /obj/item/mecha_ammo/lmg(src)
|
||||||
|
new /obj/item/mecha_ammo/lmg(src)
|
||||||
|
new /obj/item/mecha_ammo/scattershot(src)
|
||||||
|
new /obj/item/mecha_ammo/scattershot(src)
|
||||||
|
new /obj/item/mecha_ammo/scattershot(src)
|
||||||
|
new /obj/item/mecha_ammo/missiles_he(src)
|
||||||
|
new /obj/item/mecha_ammo/missiles_he(src)
|
||||||
|
new /obj/item/mecha_ammo/missiles_he(src)
|
||||||
|
|
||||||
/obj/item/storage/backpack/duffelbag/syndie/c20rbundle
|
/obj/item/storage/backpack/duffelbag/syndie/c20rbundle
|
||||||
desc = "A large duffel bag containing a C-20r, some magazines, and a cheap looking suppressor."
|
desc = "A large duffel bag containing a C-20r, some magazines, and a cheap looking suppressor."
|
||||||
|
|
||||||
|
|||||||
@@ -44,3 +44,33 @@
|
|||||||
else
|
else
|
||||||
explosion(target, 0, 0, 2, 4)
|
explosion(target, 0, 0, 2, 4)
|
||||||
return BULLET_ACT_HIT
|
return BULLET_ACT_HIT
|
||||||
|
|
||||||
|
/obj/item/projectile/bullet/a84mm_br
|
||||||
|
name ="\improper HE missile"
|
||||||
|
desc = "Boom."
|
||||||
|
icon_state = "missile"
|
||||||
|
damage = 30
|
||||||
|
ricochets_max = 0 //it's a MISSILE
|
||||||
|
var/sturdy = list(
|
||||||
|
/turf/closed,
|
||||||
|
/obj/mecha,
|
||||||
|
/obj/machinery/door/,
|
||||||
|
/obj/machinery/door/poddoor/shutters
|
||||||
|
)
|
||||||
|
|
||||||
|
/obj/item/broken_missile
|
||||||
|
name = "\improper broken missile"
|
||||||
|
desc = "A missile that did not detonate. The tail has snapped and it is in no way fit to be used again."
|
||||||
|
icon = 'icons/obj/projectiles.dmi'
|
||||||
|
icon_state = "missile_broken"
|
||||||
|
w_class = WEIGHT_CLASS_TINY
|
||||||
|
|
||||||
|
|
||||||
|
/obj/item/projectile/bullet/a84mm_br/on_hit(atom/target, blocked=0)
|
||||||
|
..()
|
||||||
|
for(var/i in sturdy)
|
||||||
|
if(istype(target, i))
|
||||||
|
explosion(target, 0, 1, 1, 2)
|
||||||
|
return BULLET_ACT_HIT
|
||||||
|
//if(istype(target, /turf/closed) || ismecha(target))
|
||||||
|
new /obj/item/broken_missile(get_turf(src), 1)
|
||||||
@@ -157,6 +157,17 @@
|
|||||||
construction_time = 70
|
construction_time = 70
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/mech_scattershot_ammo
|
||||||
|
name = "Scattershot Ammunition"
|
||||||
|
desc = "Ammunition for the LBX AC 10 and Melon Seed exosuit weapon."
|
||||||
|
id = "mech_scattershot_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/scattershot
|
||||||
|
materials = list(MAT_METAL=6000)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/mech_carbine
|
/datum/design/mech_carbine
|
||||||
name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)"
|
name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)"
|
||||||
desc = "Allows for the construction of FNX-99 \"Hades\" Carbine."
|
desc = "Allows for the construction of FNX-99 \"Hades\" Carbine."
|
||||||
@@ -167,6 +178,17 @@
|
|||||||
construction_time = 100
|
construction_time = 100
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/mech_carbine_ammo
|
||||||
|
name = "FNX-99 Carbine Ammunition"
|
||||||
|
desc = "Ammunition for the FNX-99 \"Hades\" Carbine."
|
||||||
|
id = "mech_carbine_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/incendiary
|
||||||
|
materials = list(MAT_METAL=6000)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/mech_ion
|
/datum/design/mech_ion
|
||||||
name = "Exosuit Weapon (MKIV Ion Heavy Cannon)"
|
name = "Exosuit Weapon (MKIV Ion Heavy Cannon)"
|
||||||
desc = "Allows for the construction of MKIV Ion Heavy Cannon."
|
desc = "Allows for the construction of MKIV Ion Heavy Cannon."
|
||||||
@@ -217,16 +239,38 @@
|
|||||||
construction_time = 100
|
construction_time = 100
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/mech_grenade_launcher_ammo
|
||||||
|
name = "SGL-6 Grenade Launcher Ammunition"
|
||||||
|
desc = "Ammunition for the SGL-6 Grenade Launcher."
|
||||||
|
id = "mech_grenade_launcher_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/flashbang
|
||||||
|
materials = list(MAT_METAL=4000,MAT_GOLD=500,MAT_SILVER=500)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/mech_missile_rack
|
/datum/design/mech_missile_rack
|
||||||
name = "Exosuit Weapon (SRM-8 Missile Rack)"
|
name = "Exosuit Weapon (BRM-6 Missile Rack)"
|
||||||
desc = "Allows for the construction of an SRM-8 Missile Rack."
|
desc = "Allows for the construction of an BRM-6 Breaching Missile Rack."
|
||||||
id = "mech_missile_rack"
|
id = "mech_missile_rack"
|
||||||
build_type = MECHFAB
|
build_type = MECHFAB
|
||||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack
|
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/breaching
|
||||||
materials = list(MAT_METAL=22000,MAT_GOLD=6000,MAT_SILVER=8000)
|
materials = list(MAT_METAL=22000,MAT_GOLD=6000,MAT_SILVER=8000)
|
||||||
construction_time = 100
|
construction_time = 100
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/mech_missile_rack_ammo
|
||||||
|
name = "SRM-8 Missile Rack Ammunition"
|
||||||
|
desc = "Ammunition for the SRM-8 Missile Rack."
|
||||||
|
id = "mech_missile_rack_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/missiles_br
|
||||||
|
materials = list(MAT_METAL=8000,MAT_GOLD=500,MAT_SILVER=500)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/clusterbang_launcher
|
/datum/design/clusterbang_launcher
|
||||||
name = "Exosuit Module (SOB-3 Clusterbang Launcher)"
|
name = "Exosuit Module (SOB-3 Clusterbang Launcher)"
|
||||||
desc = "A weapon that violates the Geneva Convention at 3 rounds per minute"
|
desc = "A weapon that violates the Geneva Convention at 3 rounds per minute"
|
||||||
@@ -237,6 +281,17 @@
|
|||||||
construction_time = 100
|
construction_time = 100
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/clusterbang_launcher_ammo
|
||||||
|
name = "SOB-3 Clusterbang Launcher Ammunition"
|
||||||
|
desc = "Ammunition for the SOB-3 Clusterbang Launcher"
|
||||||
|
id = "clusterbang_launcher_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/clusterbang
|
||||||
|
materials = list(MAT_METAL=6000,MAT_GOLD=1500,MAT_URANIUM=1500)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/mech_wormhole_gen
|
/datum/design/mech_wormhole_gen
|
||||||
name = "Exosuit Module (Localized Wormhole Generator)"
|
name = "Exosuit Module (Localized Wormhole Generator)"
|
||||||
desc = "An exosuit module that allows generating of small quasi-stable wormholes."
|
desc = "An exosuit module that allows generating of small quasi-stable wormholes."
|
||||||
@@ -367,6 +422,17 @@
|
|||||||
construction_time = 100
|
construction_time = 100
|
||||||
category = list("Exosuit Equipment")
|
category = list("Exosuit Equipment")
|
||||||
|
|
||||||
|
/datum/design/mech_lmg_ammo
|
||||||
|
name = "Ultra AC 2 Ammunition"
|
||||||
|
desc = "Ammunition for the Ultra AC 2 LMG"
|
||||||
|
id = "mech_lmg_ammo"
|
||||||
|
build_type = PROTOLATHE | MECHFAB
|
||||||
|
build_path = /obj/item/mecha_ammo/lmg
|
||||||
|
materials = list(MAT_METAL=4000)
|
||||||
|
construction_time = 20
|
||||||
|
category = list("Exosuit Ammunition", "Ammo")
|
||||||
|
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||||
|
|
||||||
/datum/design/mech_sleeper
|
/datum/design/mech_sleeper
|
||||||
name = "Exosuit Medical Equipment (Mounted Sleeper)"
|
name = "Exosuit Medical Equipment (Mounted Sleeper)"
|
||||||
desc = "Equipment for medical exosuits. A mounted sleeper that stabilizes patients and can inject reagents in the exosuit's reserves."
|
desc = "Equipment for medical exosuits. A mounted sleeper that stabilizes patients and can inject reagents in the exosuit's reserves."
|
||||||
|
|||||||
@@ -851,7 +851,7 @@
|
|||||||
display_name = "Exosuit Weapon (LBX AC 10 \"Scattershot\")"
|
display_name = "Exosuit Weapon (LBX AC 10 \"Scattershot\")"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("ballistic_weapons")
|
prereq_ids = list("ballistic_weapons")
|
||||||
design_ids = list("mech_scattershot")
|
design_ids = list("mech_scattershot", "mech_scattershot_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
@@ -869,7 +869,7 @@
|
|||||||
display_name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)"
|
display_name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("ballistic_weapons")
|
prereq_ids = list("ballistic_weapons")
|
||||||
design_ids = list("mech_carbine")
|
design_ids = list("mech_carbine", "mech_carbine_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
@@ -914,16 +914,16 @@
|
|||||||
display_name = "Exosuit Weapon (SGL-6 Grenade Launcher)"
|
display_name = "Exosuit Weapon (SGL-6 Grenade Launcher)"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("explosive_weapons")
|
prereq_ids = list("explosive_weapons")
|
||||||
design_ids = list("mech_grenade_launcher")
|
design_ids = list("mech_grenade_launcher", "mech_grenade_launcher_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
/datum/techweb_node/mech_missile_rack
|
/datum/techweb_node/mech_missile_rack
|
||||||
id = "mech_missile_rack"
|
id = "mech_missile_rack"
|
||||||
display_name = "Exosuit Weapon (SRM-8 Missile Rack)"
|
display_name = "Exosuit Weapon (BRM-6 Missile Rack)"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("explosive_weapons")
|
prereq_ids = list("explosive_weapons")
|
||||||
design_ids = list("mech_missile_rack")
|
design_ids = list("mech_missile_rack", "mech_missile_rack_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
@@ -932,7 +932,7 @@
|
|||||||
display_name = "Exosuit Module (SOB-3 Clusterbang Launcher)"
|
display_name = "Exosuit Module (SOB-3 Clusterbang Launcher)"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("explosive_weapons")
|
prereq_ids = list("explosive_weapons")
|
||||||
design_ids = list("clusterbang_launcher")
|
design_ids = list("clusterbang_launcher", "clusterbang_launcher_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
@@ -968,7 +968,7 @@
|
|||||||
display_name = "Exosuit Weapon (\"Ultra AC 2\" LMG)"
|
display_name = "Exosuit Weapon (\"Ultra AC 2\" LMG)"
|
||||||
description = "An advanced piece of mech weaponry"
|
description = "An advanced piece of mech weaponry"
|
||||||
prereq_ids = list("ballistic_weapons")
|
prereq_ids = list("ballistic_weapons")
|
||||||
design_ids = list("mech_lmg")
|
design_ids = list("mech_lmg", "mech_lmg_ammo")
|
||||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||||
export_price = 5000
|
export_price = 5000
|
||||||
|
|
||||||
|
|||||||
@@ -253,3 +253,17 @@
|
|||||||
item = /obj/item/ammo_box/a762
|
item = /obj/item/ammo_box/a762
|
||||||
cost = 1
|
cost = 1
|
||||||
include_modes = list(/datum/game_mode/nuclear)
|
include_modes = list(/datum/game_mode/nuclear)
|
||||||
|
|
||||||
|
/datum/uplink_item/ammo/dark_gygax/bag
|
||||||
|
name = "Dark Gygax Ammo Bag"
|
||||||
|
desc = "A duffel bag containing ammo for three full reloads of the incendiary carbine and flash bang launcher that are equipped on a standard Dark Gygax exosuit."
|
||||||
|
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/dark_gygax
|
||||||
|
cost = 4
|
||||||
|
include_modes = list(/datum/game_mode/nuclear)
|
||||||
|
|
||||||
|
/datum/uplink_item/ammo/mauler/bag
|
||||||
|
name = "Mauler Ammo Bag"
|
||||||
|
desc = "A duffel bag containing ammo for three full reloads of the LMG, scattershot carbine, and SRM-8 missile laucher that are equipped on a standard Mauler exosuit."
|
||||||
|
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/mauler
|
||||||
|
cost = 6
|
||||||
|
include_modes = list(/datum/game_mode/nuclear)
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 874 B |
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
@@ -783,6 +783,7 @@
|
|||||||
#include "code\game\mecha\equipment\tools\mining_tools.dm"
|
#include "code\game\mecha\equipment\tools\mining_tools.dm"
|
||||||
#include "code\game\mecha\equipment\tools\other_tools.dm"
|
#include "code\game\mecha\equipment\tools\other_tools.dm"
|
||||||
#include "code\game\mecha\equipment\tools\work_tools.dm"
|
#include "code\game\mecha\equipment\tools\work_tools.dm"
|
||||||
|
#include "code\game\mecha\equipment\weapons\mecha_ammo.dm"
|
||||||
#include "code\game\mecha\equipment\weapons\weapons.dm"
|
#include "code\game\mecha\equipment\weapons\weapons.dm"
|
||||||
#include "code\game\mecha\medical\medical.dm"
|
#include "code\game\mecha\medical\medical.dm"
|
||||||
#include "code\game\mecha\medical\odysseus.dm"
|
#include "code\game\mecha\medical\odysseus.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user