3. Mecha Punching glove! the Oingo Boingo Punch-face! (#23192)

This commit is contained in:
Kyle Spier-Swenson
2017-01-28 00:54:49 -06:00
committed by KorPhaeron
parent 08383ad9d6
commit 34c48e7c4d
4 changed files with 59 additions and 2 deletions
+49 -1
View File
@@ -281,6 +281,7 @@
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher
var/missile_speed = 2
var/missile_range = 30
var/diags_first = FALSE
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/action(target)
if(!action_checks(target))
@@ -290,7 +291,7 @@
log_message("Launched a [O.name] from [name], targeting [target].")
projectiles--
proj_init(O)
O.throw_at(target, missile_range, missile_speed, spin = 0)
O.throw_at(target, missile_range, missile_speed, spin = 0, diagonals_first = diags_first)
return 1
//used for projectile initilisation (priming flashbang) and additional logging
@@ -391,3 +392,50 @@
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/mousetrap_mortar/proj_init(var/obj/item/device/assembly/mousetrap/armed/M)
M.secured = 1
//Classic extending punching glove, but weaponised!
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/punching_glove
name = "\improper Oingo Boingo Punch-face"
desc = "Equipment for clown exosuits. Delivers fun to right to your face!"
icon_state = "mecha_punching_glove"
energy_drain = 250
equip_cooldown = 20
range = MELEE|RANGED
missile_range = 5
projectile = /obj/item/punching_glove
fire_sound = 'sound/items/bikehorn.ogg'
projectiles = 10
projectile_energy_cost = 500
diags_first = TRUE
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/punching_glove/can_attach(obj/mecha/combat/honker/M)
if(..())
if(istype(M))
return 1
return 0
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/punching_glove/action(target)
. = ..()
if(.)
chassis.occupant_message("<font color='red' size='5'>HONK</font>")
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/punching_glove/proj_init(obj/item/punching_glove/PG)
if(!istype(PG))
return
//has to be low sleep or it looks weird, the beam doesn't exist for very long so it's a non-issue
chassis.Beam(PG, icon_state = "chain", time = missile_range * 20, maxdistance = missile_range + 2, beam_sleep_time = 1)
/obj/item/punching_glove
name = "punching glove"
desc = "INCOMING HONKS"
throwforce = 35
icon_state = "punching_glove"
/obj/item/punching_glove/throw_impact(atom/hit_atom)
if(!..())
if(istype(hit_atom, /atom/movable))
var/atom/movable/AM = hit_atom
AM.throw_at(get_edge_target_turf(AM,get_dir(src, AM)), 7, 2)
qdel(src)
@@ -567,6 +567,15 @@
construction_time = 500
category = list("Exosuit Equipment")
/datum/design/mech_punching_glove
name = "Oingo Boingo Punch-face"
id = "mech_punching_face"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/punching_glove
materials = list(MAT_METAL=20000,MAT_BANANIUM=7500)
construction_time = 400
category = list("Exosuit Equipment")
/////////////////////////////////////////
//////////////Borg Upgrades//////////////
/////////////////////////////////////////
@@ -762,7 +771,7 @@
construction_time = 250
category = list("Misc")
req_tech = list("magnets" = 4, "combat" = 3, "plasmatech" = 4, "materials" = 5, "engineering" = 4, "powerstorage" = 4)
/datum/design/flightshoes
name = "Flight Shoes"
desc = "Flight shoes, attachable to a flight suit to provide additional functions."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 59 KiB