mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-21 04:48:18 +01:00
Francisca buffs, fixes maneuvers. (#15052)
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
var/written_message
|
||||
var/wielded = FALSE
|
||||
var/caliber = SHIP_CALIBER_NONE
|
||||
var/burst = 0 //If set to a number, this many projectiles will spawn to the side of the main projectile.
|
||||
var/impact_type = SHIP_AMMO_IMPACT_HE //This decides what happens when the ammo hits. Is it a bunkerbuster? HE? AP?
|
||||
var/ammunition_status = SHIP_AMMO_STATUS_GOOD //Currently unused, but will be relevant for chemical ammo.
|
||||
var/ammunition_flags = SHIP_AMMO_FLAG_INFLAMMABLE|SHIP_AMMO_FLAG_VERY_HEAVY
|
||||
@@ -187,6 +188,8 @@
|
||||
icon_state = "small"
|
||||
range = 250
|
||||
anti_materiel_potential = 3
|
||||
impact_sounds = list(BULLET_IMPACT_MEAT = SOUNDS_BULLET_MEAT, BULLET_IMPACT_METAL = SOUNDS_BULLET_METAL)
|
||||
accuracy = 100
|
||||
var/obj/item/ship_ammunition/ammo
|
||||
var/primed = FALSE //If primed, we don't interact with map edges. Projectiles might spawn on a landmark at the edge of space, and we don't want them to get tp'd away.
|
||||
var/hit_target = FALSE //First target we hit. Used to report if a hit was successful.
|
||||
@@ -216,4 +219,14 @@
|
||||
return ..()
|
||||
|
||||
/obj/item/projectile/ship_ammo/proc/on_translate(var/turf/entry_turf, var/target_turf) //This proc is called when the projectile enters a new ship's overmap zlevel.
|
||||
return
|
||||
if(ammo.burst)
|
||||
for(var/i = 1 to ammo.burst)
|
||||
var/turf/new_turf = get_random_turf_in_range(entry_turf, ammo.burst + rand(0, ammo.burst), 0, TRUE, FALSE)
|
||||
var/obj/item/projectile/ship_ammo/pellet = new type
|
||||
pellet.forceMove(new_turf)
|
||||
pellet.ammo = new ammo.type
|
||||
pellet.ammo.origin = ammo.origin
|
||||
pellet.ammo.impact_type = ammo.impact_type
|
||||
pellet.dir = dir
|
||||
var/turf/front_turf = get_step(pellet, pellet.dir)
|
||||
pellet.launch_projectile(front_turf)
|
||||
|
||||
@@ -21,6 +21,8 @@
|
||||
impact_type = SHIP_AMMO_IMPACT_FMJ
|
||||
ammunition_flags = SHIP_AMMO_FLAG_INFLAMMABLE|SHIP_AMMO_FLAG_VERY_HEAVY|SHIP_AMMO_FLAG_INFLAMMABLE
|
||||
caliber = SHIP_CALIBER_40MM
|
||||
burst = 8
|
||||
cookoff_heavy = 0
|
||||
|
||||
/obj/item/ship_ammunition/francisca/ap
|
||||
name = "40mm AP ammunition box"
|
||||
@@ -35,7 +37,7 @@
|
||||
icon_state = "small"
|
||||
damage = 50
|
||||
armor_penetration = 50
|
||||
penetrating = 1
|
||||
penetrating = 2
|
||||
|
||||
/obj/item/projectile/ship_ammo/francisca/ap
|
||||
name = "40mm AP bullet"
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
caliber = SHIP_CALIBER_90MM
|
||||
ammunition_behaviour = SHIP_AMMO_BEHAVIOUR_DUMBFIRE
|
||||
projectile_type_override = /obj/item/projectile/ship_ammo/grauwolf
|
||||
burst = 4
|
||||
|
||||
/obj/item/ship_ammunition/grauwolf_bundle/ap
|
||||
name = "grauwolf armor-piercing flak bundle"
|
||||
@@ -46,14 +47,4 @@
|
||||
name = "armor-piercing flak"
|
||||
damage = 50
|
||||
armor_penetration = 50
|
||||
penetrating = 2
|
||||
|
||||
/obj/item/projectile/ship_ammo/grauwolf/on_translate(var/turf/entry_turf, var/turf/target_turf)
|
||||
for(var/i = 1 to 4)
|
||||
var/turf/new_turf = get_random_turf_in_range(entry_turf, 5, 5, TRUE, TRUE)
|
||||
var/obj/item/projectile/ship_ammo/grauwolf/burst = new(new_turf)
|
||||
burst.ammo = new ammo.type
|
||||
burst.ammo.impact_type = ammo.impact_type
|
||||
var/turf/front_turf = get_step(new_turf, dir)
|
||||
burst.dir = dir
|
||||
burst.launch_projectile(front_turf)
|
||||
penetrating = 2
|
||||
@@ -137,6 +137,7 @@
|
||||
armor_penetration = 1000
|
||||
penetrating = 100
|
||||
hitscan = TRUE
|
||||
impact_sounds = list(BULLET_IMPACT_MEAT = SOUNDS_LASER_MEAT, BULLET_IMPACT_METAL = SOUNDS_LASER_METAL)
|
||||
|
||||
muzzle_type = /obj/effect/projectile/muzzle/pulse
|
||||
tracer_type = /obj/effect/projectile/tracer/pulse
|
||||
|
||||
Reference in New Issue
Block a user