mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Fixes roulette turrets shooting blob meteors (#36500)
* Roulette turret fix * refactor * refine
This commit is contained in:
@@ -592,7 +592,7 @@
|
||||
var/firing_delay = 2
|
||||
var/admin_only = 0 //Can non-admins interface with this turret's controls?
|
||||
var/roulette_mode = FALSE
|
||||
var/list/available_projectiles = list()
|
||||
var/list/roulette_projectiles = list()
|
||||
|
||||
health = 40
|
||||
var/list/scan_for = list("human"=0,"cyborg"=0,"mecha"=0,"alien"=1)
|
||||
@@ -602,7 +602,9 @@
|
||||
|
||||
/obj/structure/turret/gun_turret/New()
|
||||
..()
|
||||
available_projectiles = existing_typesof(/obj/item/projectile)
|
||||
roulette_projectiles = existing_typesof(/obj/item/projectile) - restricted_roulette_projectiles
|
||||
for(var/projectile_types in restrict_with_subtypes)
|
||||
roulette_projectiles -= typesof(projectile_types)
|
||||
|
||||
/obj/structure/turret/gun_turret/examine(mob/user)
|
||||
..()
|
||||
@@ -789,7 +791,6 @@
|
||||
target = pick(pos_targets)
|
||||
return target
|
||||
|
||||
|
||||
/obj/structure/turret/gun_turret/proc/fire(atom/target)
|
||||
if(!target)
|
||||
cur_target = null
|
||||
@@ -806,7 +807,7 @@
|
||||
continue
|
||||
playsound(src, 'sound/weapons/Gunshot.ogg', 50, 1)
|
||||
if(roulette_mode)
|
||||
projectile_type = pick(available_projectiles - restricted_roulette_projectiles)
|
||||
projectile_type = pick(roulette_projectiles)
|
||||
var/obj/item/projectile/A = new projectile_type(curloc)
|
||||
src.projectiles--
|
||||
A.original = target
|
||||
|
||||
@@ -19,6 +19,11 @@ var/list/restricted_roulette_projectiles = list(
|
||||
/obj/item/projectile/soulbullet,
|
||||
)
|
||||
|
||||
var/list/restrict_with_subtypes = list(
|
||||
/obj/item/projectile/meteor,
|
||||
/obj/item/projectile/immovablerod
|
||||
)
|
||||
|
||||
/obj/item/weapon/gun/projectile/roulette_revolver
|
||||
name = "\improper Roulette Revolver"
|
||||
desc = "A strange-looking revolver. Its construction appears somewhat slapdash."
|
||||
@@ -41,11 +46,6 @@ var/list/restricted_roulette_projectiles = list(
|
||||
var/time_since_last_recharge = 0
|
||||
var/list/available_projectiles = list()
|
||||
|
||||
var/list/restrict_with_subtypes = list(
|
||||
/obj/item/projectile/meteor,
|
||||
/obj/item/projectile/immovablerod
|
||||
)
|
||||
|
||||
/obj/item/weapon/gun/projectile/roulette_revolver/New()
|
||||
..()
|
||||
available_projectiles = existing_typesof(/obj/item/projectile)
|
||||
|
||||
Reference in New Issue
Block a user