diff --git a/code/game/machinery/porta_turret/portable_turret_construct.dm b/code/game/machinery/porta_turret/portable_turret_construct.dm index 59a4446420..7c2000175e 100644 --- a/code/game/machinery/porta_turret/portable_turret_construct.dm +++ b/code/game/machinery/porta_turret/portable_turret_construct.dm @@ -79,6 +79,9 @@ if(PTURRET_INTERNAL_ARMOUR_ON) if(istype(I, /obj/item/gun/energy)) //the gun installation part var/obj/item/gun/energy/E = I + if(!E.can_turret) + to_chat(user, "[src] can't be fit into turrets.") + return if(!user.transferItemToLoc(E, src)) return installed_gun = E diff --git a/code/modules/integrated_electronics/subtypes/weaponized.dm b/code/modules/integrated_electronics/subtypes/weaponized.dm index 950525ab7f..96a732d08f 100644 --- a/code/modules/integrated_electronics/subtypes/weaponized.dm +++ b/code/modules/integrated_electronics/subtypes/weaponized.dm @@ -45,6 +45,9 @@ /obj/item/integrated_circuit/weaponized/weapon_firing/attackby(var/obj/O, var/mob/user) if(istype(O, /obj/item/gun/energy)) var/obj/item/gun/gun = O + if(!gun.can_circuit) + to_chat(user, "[gun] does not fit into circuits.") + return if(installed_gun) to_chat(user, "There's already a weapon installed.") return diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 0d182e0a1b..50dae7d6bb 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -315,6 +315,9 @@ /obj/machinery/power/emitter/proc/integrate(obj/item/gun/energy/E,mob/user) if(istype(E, /obj/item/gun/energy)) + if(!E.can_emitter) + to_chat(user, "[E] cannot fit into emitters.") + return if(!user.transferItemToLoc(E, src)) return gun = E diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 69f2d44fa4..4126c81367 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -29,6 +29,13 @@ trigger_guard = TRIGGER_GUARD_NORMAL //trigger guard on the weapon, hulks can't fire them with their big meaty fingers var/sawn_desc = null //description change if weapon is sawn-off var/sawn_off = FALSE + + /// can we be put into a turret + var/can_turret = TRUE + /// can we be put in a circuit + var/can_circuit = TRUE + /// can we be put in an emitter + var/can_emitter = TRUE /// Weapon is burst fire if this is above 1 var/burst_size = 1 diff --git a/code/modules/projectiles/guns/misc/beam_rifle.dm b/code/modules/projectiles/guns/misc/beam_rifle.dm index bcb074023f..fd09aa7f9d 100644 --- a/code/modules/projectiles/guns/misc/beam_rifle.dm +++ b/code/modules/projectiles/guns/misc/beam_rifle.dm @@ -29,6 +29,8 @@ ammo_type = list(/obj/item/ammo_casing/energy/beam_rifle/hitscan) cell_type = /obj/item/stock_parts/cell/beam_rifle canMouseDown = TRUE + can_turret = FALSE + can_circuit = FALSE //Cit changes: beam rifle stats. slowdown = 1 item_flags = NO_MAT_REDEMPTION | SLOWS_WHILE_IN_HAND | NEEDS_PERMIT @@ -418,10 +420,10 @@ var/wall_devastate = 0 var/aoe_structure_range = 0 var/aoe_structure_damage = 0 - var/aoe_fire_range = 0 - var/aoe_fire_chance = 0 - var/aoe_mob_range = 0 - var/aoe_mob_damage = 0 + var/aoe_fire_range = 2 + var/aoe_fire_chance = 100 + var/aoe_mob_range = 2 + var/aoe_mob_damage = 30 var/impact_structure_damage = 0 var/impact_direct_damage = 0 var/turf/cached