mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
fixes and turrets
This commit is contained in:
@@ -101,8 +101,9 @@
|
|||||||
if(!perp.wear_id)
|
if(!perp.wear_id)
|
||||||
threatcount += 2
|
threatcount += 2
|
||||||
|
|
||||||
if(istype(perp.wear_suit, /obj/item/clothing/suit/wizrobe))
|
if(ishuman(perp))
|
||||||
threatcount += 2
|
if(istype(perp.wear_suit, /obj/item/clothing/suit/wizrobe))
|
||||||
|
threatcount += 2
|
||||||
|
|
||||||
if(perp.dna && perp.dna.mutantrace && perp.dna.mutantrace != "none")
|
if(perp.dna && perp.dna.mutantrace && perp.dna.mutantrace != "none")
|
||||||
threatcount += 2
|
threatcount += 2
|
||||||
|
|||||||
@@ -60,154 +60,187 @@
|
|||||||
|
|
||||||
machine_flags = EMAGGABLE
|
machine_flags = EMAGGABLE
|
||||||
|
|
||||||
New()
|
/obj/machinery/porta_turret/New()
|
||||||
..()
|
..()
|
||||||
icon_state = "[lasercolor]grey_target_prism"
|
icon_state = "[lasercolor]grey_target_prism"
|
||||||
// Sets up a spark system
|
// Sets up a spark system
|
||||||
spark_system = new /datum/effect/effect/system/spark_spread
|
spark_system = new /datum/effect/effect/system/spark_spread
|
||||||
spark_system.set_up(5, 0, src)
|
spark_system.set_up(5, 0, src)
|
||||||
spark_system.attach(src)
|
spark_system.attach(src)
|
||||||
sleep(10)
|
spawn(10)
|
||||||
if(!installation)// if for some reason the turret has no gun (ie, admin spawned) it resorts to basic taser shots
|
update_gun()
|
||||||
projectile = /obj/item/projectile/energy/electrode//holder for the projectile, here it is being set
|
|
||||||
eprojectile = /obj/item/projectile/beam//holder for the projectile when emagged, if it is different
|
|
||||||
reqpower = 200
|
|
||||||
iconholder = 1
|
|
||||||
else
|
|
||||||
var/obj/item/weapon/gun/energy/E=new installation
|
|
||||||
// All energy-based weapons are applicable
|
|
||||||
switch(E.type)
|
|
||||||
if(/obj/item/weapon/gun/energy/laser/bluetag)
|
|
||||||
projectile = /obj/item/projectile/beam/lastertag/blue
|
|
||||||
eprojectile = /obj/item/projectile/beam/lastertag/omni//This bolt will stun ERRYONE with a vest
|
|
||||||
iconholder = null
|
|
||||||
reqpower = 100
|
|
||||||
lasercolor = "b"
|
|
||||||
req_access = list(access_maint_tunnels)
|
|
||||||
check_records = 0
|
|
||||||
criminals = 0
|
|
||||||
auth_weapons = 1
|
|
||||||
stun_all = 0
|
|
||||||
check_anomalies = 0
|
|
||||||
shot_delay = 30
|
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/laser/redtag)
|
/obj/machinery/porta_turret/proc/update_gun()
|
||||||
projectile = /obj/item/projectile/beam/lastertag/red
|
if(!installation)// if for some reason the turret has no gun (ie, admin spawned) it resorts to basic taser shots
|
||||||
eprojectile = /obj/item/projectile/beam/lastertag/omni
|
projectile = /obj/item/projectile/energy/electrode//holder for the projectile, here it is being set
|
||||||
iconholder = null
|
eprojectile = /obj/item/projectile/beam//holder for the projectile when emagged, if it is different
|
||||||
reqpower = 100
|
reqpower = 200
|
||||||
lasercolor = "r"
|
iconholder = 1
|
||||||
req_access = list(access_maint_tunnels)
|
else
|
||||||
check_records = 0
|
var/obj/item/weapon/gun/energy/E=new installation
|
||||||
criminals = 0
|
// All energy-based weapons are applicable
|
||||||
auth_weapons = 1
|
switch(E.type)
|
||||||
stun_all = 0
|
if(/obj/item/weapon/gun/energy/laser/bluetag)
|
||||||
check_anomalies = 0
|
projectile = /obj/item/projectile/beam/lastertag/blue
|
||||||
shot_delay = 30
|
eprojectile = /obj/item/projectile/beam/lastertag/omni//This bolt will stun ERRYONE with a vest
|
||||||
|
iconholder = null
|
||||||
|
reqpower = 100
|
||||||
|
lasercolor = "b"
|
||||||
|
req_access = list(access_maint_tunnels)
|
||||||
|
check_records = 0
|
||||||
|
criminals = 0
|
||||||
|
auth_weapons = 1
|
||||||
|
stun_all = 0
|
||||||
|
check_anomalies = 0
|
||||||
|
shot_delay = 30
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/laser/practice)
|
if(/obj/item/weapon/gun/energy/laser/redtag)
|
||||||
projectile = /obj/item/projectile/beam/practice
|
projectile = /obj/item/projectile/beam/lastertag/red
|
||||||
eprojectile = /obj/item/projectile/beam
|
eprojectile = /obj/item/projectile/beam/lastertag/omni
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 100
|
reqpower = 100
|
||||||
|
lasercolor = "r"
|
||||||
|
req_access = list(access_maint_tunnels)
|
||||||
|
check_records = 0
|
||||||
|
criminals = 0
|
||||||
|
auth_weapons = 1
|
||||||
|
stun_all = 0
|
||||||
|
check_anomalies = 0
|
||||||
|
shot_delay = 30
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/pulse_rifle)
|
if(/obj/item/weapon/gun/energy/laser/practice)
|
||||||
projectile = /obj/item/projectile/beam/pulse
|
projectile = /obj/item/projectile/beam/practice
|
||||||
eprojectile = projectile
|
eprojectile = /obj/item/projectile/beam
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 700
|
reqpower = 100
|
||||||
fire_sound = 'sound/weapons/pulse.ogg'
|
|
||||||
efire_sound = fire_sound
|
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/staff)
|
if(/obj/item/weapon/gun/energy/pulse_rifle)
|
||||||
projectile = /obj/item/projectile/change
|
projectile = /obj/item/projectile/beam/pulse
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = 1
|
iconholder = null
|
||||||
reqpower = 700
|
reqpower = 700
|
||||||
fire_sound = 'sound/weapons/radgun.ogg'
|
fire_sound = 'sound/weapons/pulse.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/ionrifle)
|
if(/obj/item/weapon/gun/energy/staff)
|
||||||
projectile = /obj/item/projectile/ion
|
projectile = /obj/item/projectile/change
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = 1
|
iconholder = 1
|
||||||
reqpower = 700
|
reqpower = 700
|
||||||
fire_sound = 'sound/weapons/ion.ogg'
|
fire_sound = 'sound/weapons/radgun.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/taser)
|
if(/obj/item/weapon/gun/energy/ionrifle)
|
||||||
projectile = /obj/item/projectile/energy/electrode
|
projectile = /obj/item/projectile/ion
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = 1
|
iconholder = 1
|
||||||
reqpower = 200
|
reqpower = 700
|
||||||
fire_sound = 'sound/weapons/Taser.ogg'
|
fire_sound = 'sound/weapons/ion.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/stunrevolver)
|
if(/obj/item/weapon/gun/energy/taser)
|
||||||
projectile = /obj/item/projectile/energy/electrode
|
projectile = /obj/item/projectile/energy/electrode
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = 1
|
iconholder = 1
|
||||||
reqpower = 200
|
reqpower = 200
|
||||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
fire_sound = 'sound/weapons/Taser.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/lasercannon)
|
if(/obj/item/weapon/gun/energy/stunrevolver)
|
||||||
projectile = /obj/item/projectile/beam/heavylaser
|
projectile = /obj/item/projectile/energy/electrode
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = null
|
iconholder = 1
|
||||||
reqpower = 600
|
reqpower = 200
|
||||||
fire_sound = 'sound/weapons/lasercannonfire.ogg'
|
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/decloner)
|
if(/obj/item/weapon/gun/energy/lasercannon)
|
||||||
projectile = /obj/item/projectile/energy/declone
|
projectile = /obj/item/projectile/beam/heavylaser
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 600
|
reqpower = 600
|
||||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
fire_sound = 'sound/weapons/lasercannonfire.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/crossbow/largecrossbow)
|
if(/obj/item/weapon/gun/energy/decloner)
|
||||||
projectile = /obj/item/projectile/energy/bolt/large
|
projectile = /obj/item/projectile/energy/declone
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 125
|
reqpower = 600
|
||||||
fire_sound = 'sound/weapons/ebow.ogg'
|
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/crossbow)
|
if(/obj/item/weapon/gun/energy/crossbow/largecrossbow)
|
||||||
projectile = /obj/item/projectile/energy/bolt
|
projectile = /obj/item/projectile/energy/bolt/large
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 50
|
reqpower = 125
|
||||||
fire_sound = 'sound/weapons/ebow.ogg'
|
fire_sound = 'sound/weapons/ebow.ogg'
|
||||||
efire_sound = fire_sound
|
efire_sound = fire_sound
|
||||||
|
|
||||||
if(/obj/item/weapon/gun/energy/laser)
|
if(/obj/item/weapon/gun/energy/crossbow)
|
||||||
projectile = /obj/item/projectile/beam
|
projectile = /obj/item/projectile/energy/bolt
|
||||||
eprojectile = projectile
|
eprojectile = projectile
|
||||||
iconholder = null
|
iconholder = null
|
||||||
reqpower = 500
|
reqpower = 50
|
||||||
|
fire_sound = 'sound/weapons/ebow.ogg'
|
||||||
|
efire_sound = fire_sound
|
||||||
|
|
||||||
else // Energy gun shots
|
if(/obj/item/weapon/gun/energy/laser)
|
||||||
projectile = /obj/item/projectile/energy/electrode// if it hasn't been emagged, it uses normal taser shots
|
projectile = /obj/item/projectile/beam
|
||||||
eprojectile = /obj/item/projectile/beam//If it has, going to kill mode
|
eprojectile = projectile
|
||||||
iconholder = 1
|
iconholder = null
|
||||||
egun = 1
|
reqpower = 500
|
||||||
reqpower = 200
|
|
||||||
fire_sound = 'sound/weapons/Taser.ogg'
|
if(/obj/item/weapon/gun/energy/ricochet)
|
||||||
if(!eprojectile || !projectile)
|
projectile = /obj/item/projectile/ricochet
|
||||||
|
eprojectile = projectile
|
||||||
|
iconholder = null
|
||||||
|
reqpower = 500
|
||||||
|
|
||||||
|
if(/obj/item/weapon/gun/energy/bison)
|
||||||
|
projectile = /obj/item/projectile/beam/bison
|
||||||
|
eprojectile = projectile
|
||||||
|
iconholder = null
|
||||||
|
reqpower = 250
|
||||||
|
fire_sound = 'sound/weapons/bison_fire.ogg'
|
||||||
|
efire_sound = fire_sound
|
||||||
|
|
||||||
|
if(/obj/item/weapon/gun/energy/polarstar/spur)
|
||||||
|
projectile = /obj/item/projectile/spur
|
||||||
|
eprojectile = projectile
|
||||||
|
iconholder = null
|
||||||
|
reqpower = 700
|
||||||
|
fire_sound = 'sound/weapons/spur_high.ogg'
|
||||||
|
efire_sound = fire_sound
|
||||||
|
|
||||||
|
if(/obj/item/weapon/gun/energy/polarstar)
|
||||||
|
projectile = /obj/item/projectile/spur/polarstar
|
||||||
|
eprojectile = projectile
|
||||||
|
iconholder = null
|
||||||
|
reqpower = 400
|
||||||
|
fire_sound = 'sound/weapons/spur_high.ogg'
|
||||||
|
efire_sound = fire_sound
|
||||||
|
|
||||||
|
else // Energy gun shots
|
||||||
projectile = /obj/item/projectile/energy/electrode// if it hasn't been emagged, it uses normal taser shots
|
projectile = /obj/item/projectile/energy/electrode// if it hasn't been emagged, it uses normal taser shots
|
||||||
eprojectile = /obj/item/projectile/beam//If it has, going to kill mode
|
eprojectile = /obj/item/projectile/beam//If it has, going to kill mode
|
||||||
iconholder = 1
|
iconholder = 1
|
||||||
egun = 1
|
egun = 1
|
||||||
reqpower = 200
|
reqpower = 200
|
||||||
fire_sound = 'sound/weapons/Taser.ogg'
|
fire_sound = 'sound/weapons/Taser.ogg'
|
||||||
|
if(!eprojectile || !projectile)
|
||||||
|
projectile = /obj/item/projectile/energy/electrode// if it hasn't been emagged, it uses normal taser shots
|
||||||
|
eprojectile = /obj/item/projectile/beam//If it has, going to kill mode
|
||||||
|
iconholder = 1
|
||||||
|
egun = 1
|
||||||
|
reqpower = 200
|
||||||
|
fire_sound = 'sound/weapons/Taser.ogg'
|
||||||
|
|
||||||
Destroy()
|
/obj/machinery/porta_turret/Destroy()
|
||||||
// deletes its own cover with it
|
// deletes its own cover with it
|
||||||
qdel(cover)
|
qdel(cover)
|
||||||
..()
|
..()
|
||||||
|
|
||||||
|
|
||||||
/obj/machinery/porta_turret/attack_ai(mob/user as mob)
|
/obj/machinery/porta_turret/attack_ai(mob/user as mob)
|
||||||
@@ -694,6 +727,7 @@ Status: []<BR>"},
|
|||||||
use_power((reqpower*2))
|
use_power((reqpower*2))
|
||||||
// Shooting Code:
|
// Shooting Code:
|
||||||
A.starting = T
|
A.starting = T
|
||||||
|
A.shot_from = src
|
||||||
A.current = T
|
A.current = T
|
||||||
A.yo = U.y - T.y
|
A.yo = U.y - T.y
|
||||||
A.xo = U.x - T.x
|
A.xo = U.x - T.x
|
||||||
@@ -859,11 +893,7 @@ Status: []<BR>"},
|
|||||||
Turret.name = finish_name
|
Turret.name = finish_name
|
||||||
Turret.installation = src.installation
|
Turret.installation = src.installation
|
||||||
Turret.gun_charge = src.gun_charge
|
Turret.gun_charge = src.gun_charge
|
||||||
|
Turret.update_gun()
|
||||||
// Turret.cover=new/obj/machinery/porta_turret_cover(src.loc)
|
|
||||||
// Turret.cover.Parent_Turret=Turret
|
|
||||||
// Turret.cover.name = finish_name
|
|
||||||
Turret.New()
|
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|
||||||
else if(istype(W, /obj/item/weapon/crowbar))
|
else if(istype(W, /obj/item/weapon/crowbar))
|
||||||
|
|||||||
@@ -801,6 +801,7 @@ var/global/floorIsLava = 0
|
|||||||
<A href='?src=\ref[src];secretsfun=bomberdestroy'>Make Bomberman Bombs actually destroy stuff</A><BR>
|
<A href='?src=\ref[src];secretsfun=bomberdestroy'>Make Bomberman Bombs actually destroy stuff</A><BR>
|
||||||
<A href='?src=\ref[src];secretsfun=bombernohurt'>Make Bomberman Bombs harmless to players(default)</A><BR>
|
<A href='?src=\ref[src];secretsfun=bombernohurt'>Make Bomberman Bombs harmless to players(default)</A><BR>
|
||||||
<A href='?src=\ref[src];secretsfun=bombernodestroy'>Make Bomberman Bombs harmless to the environnement(default)</A><BR>
|
<A href='?src=\ref[src];secretsfun=bombernodestroy'>Make Bomberman Bombs harmless to the environnement(default)</A><BR>
|
||||||
|
<A href='?src=\ref[src];secretsfun=placeturret'>Create a turret</A><BR>
|
||||||
<BR>
|
<BR>
|
||||||
<B>Final Solutions</B><BR>
|
<B>Final Solutions</B><BR>
|
||||||
<I>(Warning, these will end the round!)</I><BR>
|
<I>(Warning, these will end the round!)</I><BR>
|
||||||
|
|||||||
@@ -2884,6 +2884,24 @@
|
|||||||
if(choice == "No, let's have perfectly circular explosions")
|
if(choice == "No, let's have perfectly circular explosions")
|
||||||
message_admins("[key_name_admin(usr)] has set explosions to completely pass through walls and obstacles.")
|
message_admins("[key_name_admin(usr)] has set explosions to completely pass through walls and obstacles.")
|
||||||
explosion_newmethod = 0
|
explosion_newmethod = 0
|
||||||
|
if("placeturret")
|
||||||
|
feedback_inc("admin_secrets_fun_used",1)
|
||||||
|
feedback_add_details("admin_secrets_fun_used","TUR")
|
||||||
|
var/list/possible_guns = list()
|
||||||
|
for(var/path in typesof(/obj/item/weapon/gun/energy))
|
||||||
|
possible_guns += path
|
||||||
|
var/choice = input("What energy gun do you want inside the turret?") in possible_guns
|
||||||
|
if(!choice)
|
||||||
|
return
|
||||||
|
var/obj/item/weapon/gun/energy/gun = new choice()
|
||||||
|
var/obj/machinery/porta_turret/Turret = new(get_turf(usr))
|
||||||
|
Turret.installation = choice
|
||||||
|
Turret.gun_charge = gun.power_supply.charge
|
||||||
|
Turret.update_gun()
|
||||||
|
qdel(gun)
|
||||||
|
var/emag = input("Emag the turret?") in list("Yes", "No")
|
||||||
|
if(emag=="Yes")
|
||||||
|
Turret.emag(usr)
|
||||||
if(usr)
|
if(usr)
|
||||||
log_admin("[key_name(usr)] used secret [href_list["secretsfun"]]")
|
log_admin("[key_name(usr)] used secret [href_list["secretsfun"]]")
|
||||||
if(ok)
|
if(ok)
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
return secured
|
return secured
|
||||||
|
|
||||||
/obj/item/device/assembly/prox_sensor/HasProximity(atom/movable/AM as mob|obj)
|
/obj/item/device/assembly/prox_sensor/HasProximity(atom/movable/AM as mob|obj)
|
||||||
if(timestopped || loc.timestopped) return
|
if(timestopped || (loc && loc.timestopped)) return
|
||||||
if (istype(AM, /obj/effect/beam)) return
|
if (istype(AM, /obj/effect/beam)) return
|
||||||
if (AM.move_speed < 12) sense()
|
if (AM.move_speed < 12) sense()
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -156,6 +156,9 @@
|
|||||||
|
|
||||||
remove_from_mob(to_drop) //clean out any refs
|
remove_from_mob(to_drop) //clean out any refs
|
||||||
|
|
||||||
|
if(!to_drop)
|
||||||
|
return 0
|
||||||
|
|
||||||
to_drop.forceMove(Target) //calls the Entered procs
|
to_drop.forceMove(Target) //calls the Entered procs
|
||||||
|
|
||||||
to_drop.dropped(src)
|
to_drop.dropped(src)
|
||||||
|
|||||||
@@ -364,7 +364,7 @@
|
|||||||
src.visible_message("<span class='warning'>[src] has thrown [item].</span>", \
|
src.visible_message("<span class='warning'>[src] has thrown [item].</span>", \
|
||||||
drugged_message = "<span class='warning'>[item] escapes from [src]'s grasp and flies away!</span>")
|
drugged_message = "<span class='warning'>[item] escapes from [src]'s grasp and flies away!</span>")
|
||||||
|
|
||||||
if((istype(src.loc, /turf/space)) || (src.areaMaster.has_gravity == 0))
|
if((istype(src.loc, /turf/space)) || (src.areaMaster && (src.areaMaster.has_gravity == 0)))
|
||||||
var/mob/space_obj=src
|
var/mob/space_obj=src
|
||||||
// If we're being held, make the guy holding us move.
|
// If we're being held, make the guy holding us move.
|
||||||
if(istype(loc,/obj/item/weapon/holder))
|
if(istype(loc,/obj/item/weapon/holder))
|
||||||
|
|||||||
@@ -727,6 +727,8 @@ var/list/beam_master = list()
|
|||||||
if(drawn) return
|
if(drawn) return
|
||||||
drawn = 1
|
drawn = 1
|
||||||
var/atom/curr = lastloc
|
var/atom/curr = lastloc
|
||||||
|
if(!firer)
|
||||||
|
firer = starting
|
||||||
var/Angle=round(Get_Angle(firer,curr))
|
var/Angle=round(Get_Angle(firer,curr))
|
||||||
var/icon/I=new('icons/obj/lightning.dmi',icon_state)
|
var/icon/I=new('icons/obj/lightning.dmi',icon_state)
|
||||||
var/icon/Istart=new('icons/obj/lightning.dmi',"[icon_state]start")
|
var/icon/Istart=new('icons/obj/lightning.dmi',"[icon_state]start")
|
||||||
|
|||||||
@@ -109,7 +109,9 @@
|
|||||||
|
|
||||||
/obj/item/projectile/spur/OnFired()
|
/obj/item/projectile/spur/OnFired()
|
||||||
..()
|
..()
|
||||||
var/obj/item/weapon/gun/energy/polarstar/quote = shot_from
|
var/obj/item/weapon/gun/energy/polarstar/spur/quote = shot_from
|
||||||
|
if(!quote || !istype(quote))
|
||||||
|
return
|
||||||
switch(quote.firelevel)
|
switch(quote.firelevel)
|
||||||
if(SPUR_FULL_POWER,SPUR_HIGH_POWER)
|
if(SPUR_FULL_POWER,SPUR_HIGH_POWER)
|
||||||
icon_state = "spur_high"
|
icon_state = "spur_high"
|
||||||
@@ -131,6 +133,8 @@
|
|||||||
/obj/item/projectile/spur/polarstar/OnFired()
|
/obj/item/projectile/spur/polarstar/OnFired()
|
||||||
..()
|
..()
|
||||||
var/obj/item/weapon/gun/energy/polarstar/quote = shot_from
|
var/obj/item/weapon/gun/energy/polarstar/quote = shot_from
|
||||||
|
if(!quote || !istype(quote))
|
||||||
|
return
|
||||||
switch(quote.firelevel)
|
switch(quote.firelevel)
|
||||||
if(SPUR_FULL_POWER,SPUR_HIGH_POWER)
|
if(SPUR_FULL_POWER,SPUR_HIGH_POWER)
|
||||||
icon_state = "spur_high"
|
icon_state = "spur_high"
|
||||||
|
|||||||
@@ -246,7 +246,7 @@
|
|||||||
M.LAssailant = firer
|
M.LAssailant = firer
|
||||||
else
|
else
|
||||||
M.attack_log += "\[[time_stamp()]\] <b>UNKNOWN/(no longer exists)</b> shot <b>UNKNOWN/(no longer exists)</b> with a <b>[type]</b>"
|
M.attack_log += "\[[time_stamp()]\] <b>UNKNOWN/(no longer exists)</b> shot <b>UNKNOWN/(no longer exists)</b> with a <b>[type]</b>"
|
||||||
msg_admin_attack("UNKNOWN/(no longer exists) shot UNKNOWN/(no longer exists) with a [type]. Wait what the fuck? (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[firer.x];Y=[firer.y];Z=[firer.z]'>JMP</a>)")
|
msg_admin_attack("UNKNOWN/(no longer exists) shot UNKNOWN/(no longer exists) with a [type]. Wait what the fuck?")
|
||||||
log_attack("<font color='red'>UNKNOWN/(no longer exists) shot UNKNOWN/(no longer exists) with a [type]</font>")
|
log_attack("<font color='red'>UNKNOWN/(no longer exists) shot UNKNOWN/(no longer exists) with a [type]</font>")
|
||||||
|
|
||||||
/obj/item/projectile/ricochet/Bump(atom/A as mob|obj|turf|area)
|
/obj/item/projectile/ricochet/Bump(atom/A as mob|obj|turf|area)
|
||||||
|
|||||||
Reference in New Issue
Block a user