Mech's update (#6089)

This is a big PR, implements most of https://forums.aurorastation.org/topic/11276-the-small-ish-robotics-rework/

Changes:

rscadd: "Added Kinetic accelerator to mechs. RND can now research and make these Kinetc accelerators. There is a regular and a burst(3 shots) version. It will be better than average-decent man-held KA."

rscdel: "Added flamethrower for mechs. RND can now research and make this flamethrower. Works like man-held flamethrower."

soundadd: "Added flamethrower sound."

balance: "Hermes mech armour values has beeen rework. No longer it has bullet protection of millitary grade mech, and brute protection of a baby. Bomb protection increased, and fire protection decreased."

bugfix: "Fixed fire spam of burst mech weapons. Before if you click fast enough you were able to bypass cooldown x number of times in a row for burst mech weapons."

tweak: "Hydraulic clamp now loads all of the ores from a tile in one click into the box of mech. Just like mining satchel."

tweak: "The LBX AC 10 "Scattershot" now uses shotgun sound effect."

Replaces use of ':' inside of Mech's and hostile mob code
This commit is contained in:
Mykhailo Bykhovtsev
2019-03-18 00:05:52 -07:00
committed by Erki
parent f107160c96
commit d839bf0d48
14 changed files with 297 additions and 19 deletions

View File

@@ -8,6 +8,12 @@
range = 5
var/pressure_decrease = 0.25
/obj/item/projectile/kinetic/mech
damage = 15
/obj/item/projectile/kinetic/mech/burst
damage = 10
/obj/item/projectile/kinetic/on_impact(var/atom/A,var/aoe_scale = 1, var/damage_scale = 1)
var/turf/target_turf = get_turf(A)
if(!target_turf)

View File

@@ -253,11 +253,11 @@ mob/living/simple_animal/hostile/hitby(atom/movable/AM as mob|obj,var/speed = TH
if (casingtype)
new casingtype(loc)
/mob/living/simple_animal/hostile/proc/Shoot(var/target, var/start, var/user, var/bullet = 0)
/mob/living/simple_animal/hostile/proc/Shoot(var/target, var/start, var/mob/user, var/bullet = 0)
if(target == start)
return
var/obj/item/projectile/A = new projectiletype(user:loc)
var/obj/item/projectile/A = new projectiletype(user.loc)
playsound(user, projectilesound, 100, 1)
if(!A) return
var/def_zone = get_exposed_defense_zone(target)

View File

@@ -488,6 +488,27 @@
id = "drill"
build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill
/datum/design/item/mecha/kinetic_accelerator
name = "Burst kinetic accelerator"
id = "kinetic_accelerator"
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_MAGNET = 3, TECH_PHORON = 3)
materials = list("glass" = 2250, DEFAULT_WALL_MATERIAL = 55000, "silver" = 5250)
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/kin_accelerator
/datum/design/item/mecha/kinetic_accelerator/burst
name = "Kinetic accelerator"
id = "kinetic_accelerator_burst"
req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4, TECH_MAGNET = 4, TECH_PHORON = 4)
materials = list("glass" = 5250, DEFAULT_WALL_MATERIAL = 60000, "silver" = 7250)
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/kin_accelerator/burst
/datum/design/item/mecha/flamethrower
name = "Flamethrower"
id = "flamethrower"
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 4, TECH_COMBAT = 2, TECH_PHORON = 2)
materials = list("glass" = 5250, DEFAULT_WALL_MATERIAL = 40000)
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/flamethrower
/datum/design/item/mecha/extinguisher
name = "Extinguisher"
id = "extinguisher"