mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-22 08:01:06 +00:00
Adds some new mech weaponry for the legion, changes the way mech decals are applied (#7534)
This commit is contained in:
@@ -83,7 +83,7 @@ STOCK_ITEM_RARE(exogear, 1.5)
|
||||
/obj/item/mecha_equipment/clamp = 1,
|
||||
/obj/item/mecha_equipment/drill = 1,
|
||||
/obj/item/mecha_equipment/mounted_system/extinguisher = 1,
|
||||
/obj/item/mecha_equipment/mounted_system/rcd = 0.08,
|
||||
/obj/item/mecha_equipment/mounted_system/rfd = 0.08,
|
||||
/obj/item/mecha_equipment/mounted_system/plasmacutter = 0.5,
|
||||
/obj/item/mecha_equipment/catapult = 0.8,
|
||||
/obj/item/mecha_equipment/sleeper = 0.9
|
||||
|
||||
@@ -65,9 +65,9 @@
|
||||
var/list/new_overlays = get_mech_icon(list(legs, head, body, arms), layer)
|
||||
if(body)
|
||||
density = TRUE
|
||||
overlays += get_mech_image(null, "[body.icon_state]_cockpit", body.icon, body.color)
|
||||
overlays += get_mech_image("[body.icon_state]_cockpit", body.icon, body.color)
|
||||
if(body.pilot_coverage < 100 || body.transparent_cabin)
|
||||
new_overlays += get_mech_image(null, "[body.icon_state]_open_overlay", body.icon, body.color)
|
||||
new_overlays += get_mech_image("[body.icon_state]_open_overlay", body.icon, body.color)
|
||||
else
|
||||
density = FALSE
|
||||
overlays = new_overlays
|
||||
|
||||
@@ -44,6 +44,22 @@
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_ADVWEAPONS)
|
||||
|
||||
/obj/item/mecha_equipment/mounted_system/blaster
|
||||
name = "rapidfire blaster"
|
||||
desc = "A weapon for combat exosuits. Shoots armor penetrating blaster beams."
|
||||
icon_state = "mecha_blaster"
|
||||
holding_type = /obj/item/gun/energy/blaster/mounted/mech
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_WEAPONS)
|
||||
|
||||
/obj/item/mecha_equipment/mounted_system/gauss
|
||||
name = "heavy gauss cannon"
|
||||
desc = "A weapon for combat exosuits. Shoots high explosive gauss propelled projectiles."
|
||||
icon_state = "mecha_gauss"
|
||||
holding_type = /obj/item/gun/energy/gauss/mounted/mech
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_WEAPONS)
|
||||
|
||||
/obj/item/gun/energy/taser/mounted/mech
|
||||
use_external_power = TRUE
|
||||
self_recharge = TRUE
|
||||
@@ -90,6 +106,22 @@
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_SHOULDER, HARDPOINT_RIGHT_SHOULDER)
|
||||
restricted_software = list(MECH_SOFTWARE_WEAPONS)
|
||||
|
||||
/obj/item/mecha_equipment/mounted_system/grenadetear
|
||||
name = "teargas launcher"
|
||||
desc = "The SGL-6TGL grenade launcher is designated to launch primed teargas grenades."
|
||||
icon_state = "mecha_grenadelnchr"
|
||||
holding_type = /obj/item/gun/launcher/mech/mountedtgl
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_SHOULDER, HARDPOINT_RIGHT_SHOULDER)
|
||||
restricted_software = list(MECH_SOFTWARE_WEAPONS)
|
||||
|
||||
/obj/item/mecha_equipment/mounted_system/grenadesmoke
|
||||
name = "smoke grenade launcher"
|
||||
desc = "The SGL-6SGL grenade launcher is designated to launch primed smoke grenades."
|
||||
icon_state = "mecha_grenadelnchr"
|
||||
holding_type = /obj/item/gun/launcher/mech/mountedsgl
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_SHOULDER, HARDPOINT_RIGHT_SHOULDER)
|
||||
restricted_software = list(MECH_SOFTWARE_WEAPONS)
|
||||
|
||||
/obj/item/gun/launcher/mech
|
||||
name = "mounted mech launcher"
|
||||
desc = "Shouldn't be seeing this."
|
||||
@@ -191,6 +223,52 @@
|
||||
addtimer(CALLBACK(src, .proc/regen_proj), proj_gen_time, TIMER_UNIQUE)
|
||||
return g
|
||||
|
||||
/obj/item/gun/launcher/mech/mountedtgl
|
||||
name = "mounted teargas launcher"
|
||||
desc = "The SGL-6TGL grenade launcher is designated to launch primed teargas grenades."
|
||||
icon = 'icons/obj/robot_items.dmi'
|
||||
icon_state = "smg"
|
||||
item_state = "smg"
|
||||
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
||||
|
||||
release_force = 5
|
||||
throw_distance = 7
|
||||
proj = 3
|
||||
max_proj = 3
|
||||
proj_gen_time = 200
|
||||
|
||||
/obj/item/gun/launcher/mech/mountedtgl/consume_next_projectile()
|
||||
if(proj < 1) return null
|
||||
var/obj/item/grenade/chem_grenade/teargas/tg = new (src)
|
||||
tg.det_time = 10
|
||||
tg.activate(null)
|
||||
proj--
|
||||
addtimer(CALLBACK(src, .proc/regen_proj), proj_gen_time, TIMER_UNIQUE)
|
||||
return tg
|
||||
|
||||
/obj/item/gun/launcher/mech/mountedsgl
|
||||
name = "mounted smoke launcher"
|
||||
desc = "The SGL-6SGL grenade launcher is designated to launch primed smoke grenades."
|
||||
icon = 'icons/obj/robot_items.dmi'
|
||||
icon_state = "smg"
|
||||
item_state = "smg"
|
||||
fire_sound = 'sound/weapons/grenadelaunch.ogg'
|
||||
|
||||
release_force = 5
|
||||
throw_distance = 7
|
||||
proj = 3
|
||||
max_proj = 3
|
||||
proj_gen_time = 200
|
||||
|
||||
/obj/item/gun/launcher/mech/mountedsgl/consume_next_projectile()
|
||||
if(proj < 1) return null
|
||||
var/obj/item/grenade/smokebomb/sg = new (src)
|
||||
sg.det_time = 10
|
||||
sg.activate(null)
|
||||
proj--
|
||||
addtimer(CALLBACK(src, .proc/regen_proj), proj_gen_time, TIMER_UNIQUE)
|
||||
return sg
|
||||
|
||||
/obj/item/gun/launcher/mech/get_hardpoint_maptext()
|
||||
return "[proj]/[max_proj]"
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/obj/item/mecha_equipment/mounted_system/rcd
|
||||
icon_state = "mech_rfd"
|
||||
/obj/item/mecha_equipment/mounted_system/rfd
|
||||
name = "mounted rfd"
|
||||
icon_state = "mecha_rfd"
|
||||
holding_type = /obj/item/rfd/construction/borg
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_ENGINEERING)
|
||||
@@ -21,6 +22,7 @@
|
||||
return null
|
||||
|
||||
/obj/item/extinguisher/mech
|
||||
name = "mounted fire extinguisher"
|
||||
max_water = 4000 //Good is gooder
|
||||
icon_state = "mecha_exting"
|
||||
|
||||
|
||||
@@ -266,6 +266,7 @@
|
||||
|
||||
|
||||
/obj/item/mecha_equipment/mounted_system/medanalyzer
|
||||
name = "mounted health analyzer"
|
||||
icon_state = "mecha_healthyanalyzer"
|
||||
holding_type = /obj/item/device/healthanalyzer/adv/mech
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
|
||||
@@ -1,23 +1,13 @@
|
||||
var/global/list/mecha_image_cache = list()
|
||||
var/global/list/mecha_icon_cache = list()
|
||||
|
||||
proc/get_mech_image(var/decal, var/cache_key, var/cache_icon, var/image_colour, var/overlay_layer = FLOAT_LAYER)
|
||||
var/use_key = "[cache_key]-[cache_icon]-[decal ? decal : "none"]-[image_colour ? image_colour : "none"]"
|
||||
proc/get_mech_image(var/cache_key, var/cache_icon, var/image_colour, var/overlay_layer = FLOAT_LAYER)
|
||||
var/use_key = "[cache_key]-[cache_icon]-[image_colour ? image_colour : "none"]"
|
||||
if(image_colour) use_key += "-[image_colour]"
|
||||
if(!mecha_image_cache[use_key])
|
||||
var/image/I = image(icon = cache_icon, icon_state = cache_key)
|
||||
if(image_colour)
|
||||
I.color = image_colour
|
||||
if(decal)
|
||||
var/decal_key = "[decal]-[cache_key]"
|
||||
if(!global.mecha_icon_cache[decal_key])
|
||||
var/template_key = "template-[cache_key]"
|
||||
if(!global.mecha_icon_cache[template_key])
|
||||
global.mecha_icon_cache[template_key] = icon(cache_icon, "[cache_key]_mask")
|
||||
var/icon/decal_icon = icon('icons/mecha/mecha_decals.dmi', decal)
|
||||
decal_icon.Blend(global.mecha_icon_cache[template_key], ICON_MULTIPLY)
|
||||
global.mecha_icon_cache[decal_key] = decal_icon
|
||||
I.overlays += get_mech_image(null, decal_key, global.mecha_icon_cache[decal_key])
|
||||
I.layer = overlay_layer
|
||||
I.plane = FLOAT_PLANE
|
||||
global.mecha_image_cache[use_key] = I
|
||||
@@ -26,30 +16,38 @@ proc/get_mech_image(var/decal, var/cache_key, var/cache_icon, var/image_colour,
|
||||
proc/get_mech_icon(var/list/components = list(), var/overlay_layer = FLOAT_LAYER)
|
||||
var/list/all_images = list()
|
||||
for(var/obj/item/mech_component/comp in components)
|
||||
all_images += get_mech_image(comp.decal, comp.icon_state, comp.on_mech_icon, comp.color, overlay_layer)
|
||||
all_images += get_mech_image(comp.icon_state, comp.on_mech_icon, comp.color, overlay_layer)
|
||||
return all_images
|
||||
|
||||
/mob/living/heavy_vehicle/update_icon()
|
||||
var/list/mecha_weapon_overlays = list()
|
||||
mecha_weapon_overlays = icon_states('icons/mecha/mecha_weapon_overlays.dmi')
|
||||
var/list/new_overlays = get_mech_icon(list(body, head), MECH_BASE_LAYER)
|
||||
if(body && !hatch_closed)
|
||||
new_overlays += get_mech_image(body.decal, "[body.icon_state]_cockpit", body.on_mech_icon, MECH_BASE_LAYER)
|
||||
new_overlays += get_mech_image("[body.icon_state]_cockpit", body.on_mech_icon, MECH_BASE_LAYER)
|
||||
update_pilot_overlay(FALSE)
|
||||
if(LAZYLEN(pilot_overlays))
|
||||
new_overlays += pilot_overlays
|
||||
if(body)
|
||||
new_overlays += get_mech_image(body.decal, "[body.icon_state]_overlay[hatch_closed ? "" : "_open"]", body.on_mech_icon, body.color, MECH_COCKPIT_LAYER)
|
||||
new_overlays += get_mech_image("[body.icon_state]_overlay[hatch_closed ? "" : "_open"]", body.on_mech_icon, body.color, MECH_COCKPIT_LAYER)
|
||||
if(arms)
|
||||
new_overlays += get_mech_image(arms.decal, arms.icon_state, arms.on_mech_icon, arms.color, MECH_ARM_LAYER)
|
||||
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.decal, legs.icon_state, legs.on_mech_icon, legs.color, MECH_LEG_LAYER)
|
||||
new_overlays += get_mech_image(legs.icon_state, legs.on_mech_icon, legs.color, MECH_LEG_LAYER)
|
||||
|
||||
var/list/mecha_decal_overlays = list()
|
||||
mecha_decal_overlays = icon_states('icons/mecha/mecha_decals.dmi')
|
||||
if(decal)
|
||||
if(decal in mecha_decal_overlays)
|
||||
new_overlays += get_mech_image(decal, 'icons/mecha/mecha_decals.dmi', null, MECH_DECAL_LAYER)
|
||||
|
||||
var/list/mecha_weapon_overlays = list()
|
||||
mecha_weapon_overlays = icon_states('icons/mecha/mecha_weapon_overlays.dmi')
|
||||
for(var/hardpoint in hardpoints)
|
||||
var/obj/item/mecha_equipment/hardpoint_object = hardpoints[hardpoint]
|
||||
if(hardpoint_object)
|
||||
var/use_icon_state = "[hardpoint_object.icon_state]_[hardpoint]"
|
||||
if(use_icon_state in mecha_weapon_overlays)
|
||||
new_overlays += get_mech_image(null, use_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, hardpoint_object.mech_layer)
|
||||
new_overlays += get_mech_image(use_icon_state, 'icons/mecha/mecha_weapon_overlays.dmi', null, hardpoint_object.mech_layer)
|
||||
|
||||
overlays = new_overlays
|
||||
|
||||
/mob/living/heavy_vehicle/proc/update_pilot_overlay(var/update_overlays = TRUE)
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
status_flags = PASSEMOTES
|
||||
a_intent = I_HURT
|
||||
mob_size = MOB_LARGE
|
||||
var/decal
|
||||
|
||||
var/emp_damage = 0
|
||||
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
/mob/living/heavy_vehicle/premade
|
||||
name = "impossible mech"
|
||||
desc = "It seems to be saying 'please let me die'."
|
||||
var/decal
|
||||
icon = 'icons/mecha/mecha.dmi'
|
||||
icon_state = "ripley"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/Initialize()
|
||||
icon = null
|
||||
icon_state = null
|
||||
if(arms)
|
||||
arms.decal = decal
|
||||
arms.prebuild()
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/mob/living/heavy_vehicle/premade/combat
|
||||
name = "combat exosuit"
|
||||
desc = "A sleek, modern combat exosuit."
|
||||
icon_state = "durand"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/combat/Initialize()
|
||||
if(!arms)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/mob/living/heavy_vehicle/premade/heavy
|
||||
name = "Heavy exosuit"
|
||||
desc = "A heavily armored combat exosuit."
|
||||
icon_state = "durand"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/heavy/Initialize()
|
||||
if(!arms)
|
||||
@@ -88,6 +89,7 @@
|
||||
/mob/living/heavy_vehicle/premade/superheavy
|
||||
name = "Marauder"
|
||||
desc = "Heavy-duty, combat exosuit, developed after the Durand model. Rarely found among civilian populations."
|
||||
icon_state = "darkgygax"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/superheavy/Initialize()
|
||||
if(!arms)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/mob/living/heavy_vehicle/premade/light
|
||||
name = "light exosuit"
|
||||
desc = "A light and agile exosuit."
|
||||
icon_state = "odysseus"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/light/Initialize()
|
||||
if(!arms)
|
||||
@@ -86,4 +87,33 @@
|
||||
"[WEST]" = list("x" = 9, "y" = -2)
|
||||
)
|
||||
)
|
||||
. = ..()
|
||||
. = ..()
|
||||
|
||||
/mob/living/heavy_vehicle/premade/light/legion
|
||||
name = "legion support exosuit"
|
||||
desc = "A light and agile exosuit painted in the colours of the Tau Ceti Foreign Legion."
|
||||
icon_state = "odysseus"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/light/legion/Initialize()
|
||||
if(!arms)
|
||||
arms = new /obj/item/mech_component/manipulators/light(src)
|
||||
arms.color = "#849bc1"
|
||||
if(!legs)
|
||||
legs = new /obj/item/mech_component/propulsion/light(src)
|
||||
legs.color = "#849bc1"
|
||||
if(!head)
|
||||
head = new /obj/item/mech_component/sensors/light(src)
|
||||
head.color = "#849bc1"
|
||||
if(!body)
|
||||
body = new /obj/item/mech_component/chassis/light(src)
|
||||
body.color = "#849bc1"
|
||||
|
||||
. = ..()
|
||||
|
||||
/mob/living/heavy_vehicle/premade/light/legion/spawn_mech_equipment()
|
||||
install_system(new /obj/item/mecha_equipment/clamp(src), HARDPOINT_RIGHT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/medanalyzer(src), HARDPOINT_LEFT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/sleeper(src), HARDPOINT_BACK)
|
||||
install_system(new /obj/item/mecha_equipment/light(src), HARDPOINT_HEAD)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/flarelauncher(src), HARDPOINT_RIGHT_SHOULDER)
|
||||
install_system(new /obj/item/mecha_equipment/crisis_drone(src), HARDPOINT_LEFT_SHOULDER)
|
||||
|
||||
@@ -87,16 +87,19 @@
|
||||
/mob/living/heavy_vehicle/premade/ripley/flames_red
|
||||
name = "APLU \"Firestarter\""
|
||||
desc = "An ancient but well-liked cargo handling exosuit. This one has cool red flames."
|
||||
icon_state = "ripley_flames_red"
|
||||
decal = "flames_red"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/ripley/flames_blue
|
||||
name = "APLU \"Burning Chrome\""
|
||||
desc = "An ancient but well-liked cargo handling exosuit. This one has cool blue flames."
|
||||
icon_state = "ripley_flames_blue"
|
||||
decal = "flames_blue"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/firefighter
|
||||
name = "firefighting exosuit"
|
||||
desc = "A mix and match of industrial parts designed to withstand fires."
|
||||
icon_state = "firefighter"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/firefighter/Initialize()
|
||||
if(!arms)
|
||||
@@ -129,6 +132,8 @@
|
||||
/mob/living/heavy_vehicle/premade/combatripley
|
||||
name = "combat APLU \"Ripley\""
|
||||
desc = "A large APLU unit fitted with specialized composite armor and fancy, though old targeting systems."
|
||||
icon_state = "combatripley"
|
||||
decal = "ripley_legion"
|
||||
|
||||
/mob/living/heavy_vehicle/premade/combatripley/Initialize()
|
||||
if(!arms)
|
||||
@@ -150,9 +155,10 @@
|
||||
|
||||
/mob/living/heavy_vehicle/premade/combatripley/spawn_mech_equipment()
|
||||
..()
|
||||
install_system(new /obj/item/mecha_equipment/drill(src), HARDPOINT_LEFT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/taser/laser(src), HARDPOINT_RIGHT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/grenadeflash(src), HARDPOINT_RIGHT_SHOULDER)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/blaster(src), HARDPOINT_LEFT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/gauss(src), HARDPOINT_RIGHT_HAND)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/flarelauncher(src), HARDPOINT_RIGHT_SHOULDER)
|
||||
install_system(new /obj/item/mecha_equipment/mounted_system/grenadesmoke(src), HARDPOINT_LEFT_SHOULDER)
|
||||
|
||||
/obj/item/mech_component/sensors/combatripley
|
||||
name = "exosuit sensors"
|
||||
|
||||
@@ -20,6 +20,20 @@
|
||||
list(mode_name="2-round bursts", burst=2, fire_delay=null, move_delay=2, burst_accuracy=list(1,0,0), dispersion=list(0, 10, 15))
|
||||
)
|
||||
|
||||
/obj/item/gun/energy/blaster/mounted/mech
|
||||
name = "rapidfire blaster"
|
||||
desc = "An aged but reliable rapidfire blaster tuned to expel projectiles at high fire rates."
|
||||
fire_sound = 'sound/weapons/laserstrong.ogg'
|
||||
projectile_type = /obj/item/projectile/energy/blaster/heavy
|
||||
burst = 5
|
||||
burst_delay = 3
|
||||
max_shots = 30
|
||||
charge_cost = 100
|
||||
use_external_power = TRUE
|
||||
self_recharge = TRUE
|
||||
recharge_time = 1.5
|
||||
dispersion = list(3,6,9,12)
|
||||
|
||||
/obj/item/gun/energy/blaster/revolver
|
||||
name = "blaster revolver"
|
||||
desc = "A robust eight-shot blaster.."
|
||||
@@ -47,7 +61,6 @@
|
||||
desc = "A robust, low in maintenance, eight-shot blaster. Perfect for self-defense purposes."
|
||||
|
||||
/obj/item/gun/energy/blaster/carbine
|
||||
|
||||
name = "blaster carbine"
|
||||
desc = "A short-barreled blaster carbine meant for easy handling and comfort when in combat."
|
||||
icon_state = "blaster_carbine"
|
||||
|
||||
@@ -225,7 +225,6 @@
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/gauss)
|
||||
icon_state = "gauss_thumper"
|
||||
caliber = "gauss"
|
||||
accuracy = 1
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
|
||||
fire_sound = 'sound/weapons/railgun.ogg'
|
||||
load_method = MAGAZINE
|
||||
@@ -249,4 +248,20 @@
|
||||
item_state = "gauss_thumper"
|
||||
|
||||
update_held_icon()
|
||||
return
|
||||
return
|
||||
|
||||
/obj/item/gun/energy/gauss/mounted/mech
|
||||
name = "heavy gauss cannon"
|
||||
desc = "An outdated and power hungry gauss cannon, modified to deliver high explosive rounds at high velocities."
|
||||
icon = 'icons/obj/gun.dmi'
|
||||
icon_state = "gauss_thumper"
|
||||
fire_sound = 'sound/weapons/railgun.ogg'
|
||||
fire_delay = 30
|
||||
charge_meter = 0
|
||||
max_shots = 3
|
||||
charge_cost = 500
|
||||
projectile_type = /obj/item/projectile/bullet/gauss/highex
|
||||
self_recharge = 1
|
||||
use_external_power = 1
|
||||
recharge_time = 12
|
||||
needspin = FALSE
|
||||
@@ -329,6 +329,22 @@
|
||||
muzzle_type = /obj/effect/projectile/muzzle/gauss
|
||||
embed = 0
|
||||
|
||||
/obj/item/projectile/bullet/gauss/highex
|
||||
name ="high-ex shell"
|
||||
damage = 10
|
||||
|
||||
/obj/item/projectile/bullet/gauss/highex/on_impact(var/atom/A)
|
||||
explosion(A, -1, 0, 2)
|
||||
..()
|
||||
|
||||
/obj/item/projectile/bullet/gauss/highex/on_hit(var/atom/target, var/blocked = 0)
|
||||
explosion(target, -1, 0, 2)
|
||||
sleep(0)
|
||||
var/obj/T = target
|
||||
var/throwdir = get_dir(firer,target)
|
||||
T.throw_at(get_edge_target_turf(target, throwdir),3,3)
|
||||
return 1
|
||||
|
||||
/obj/item/projectile/bullet/cannonball
|
||||
name = "cannonball"
|
||||
icon_state = "cannonball"
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
time = 90
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000, "phoron" = 25000, "steel" = 15000, "gold" = 15000)
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER = 4, TECH_ENGINEERING = 4)
|
||||
build_path = /obj/item/mecha_equipment/mounted_system/rcd
|
||||
build_path = /obj/item/mecha_equipment/mounted_system/rfd
|
||||
|
||||
/datum/design/item/mechfab/exosuit/floodlight
|
||||
name = "floodlight"
|
||||
|
||||
Reference in New Issue
Block a user