Revert "12/21 modernizations from TG live"

This commit is contained in:
LetterJay
2016-12-22 22:35:44 -06:00
committed by GitHub
parent cf59ac1c3d
commit ae40d4134e
2215 changed files with 86928 additions and 707332 deletions
+2 -12
View File
@@ -9,7 +9,6 @@
hitsound_wall = 'sound/weapons/effects/searwall.ogg'
flag = "laser"
eyeblur = 2
impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser
/obj/item/projectile/beam/laser
@@ -45,7 +44,6 @@
irradiate = 30
range = 15
forcedodge = 1
impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser
/obj/item/projectile/beam/disabler
name = "disabler beam"
@@ -55,18 +53,16 @@
flag = "energy"
hitsound = 'sound/weapons/tap.ogg'
eyeblur = 0
impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser
/obj/item/projectile/beam/pulse
name = "pulse"
icon_state = "u_laser"
damage = 50
luminosity = 2
impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser
/obj/item/projectile/beam/pulse/on_hit(atom/target, blocked = 0)
. = ..()
if(isturf(target) || istype(target,/obj/structure/))
if(istype(target,/turf/)||istype(target,/obj/structure/))
target.ex_act(2)
/obj/item/projectile/beam/pulse/shot
@@ -77,7 +73,7 @@
icon_state = "pulse1_bl"
var/life = 20
/obj/item/projectile/beam/pulse/heavy/on_hit(atom/target, blocked = 0)
/obj/item/projectile/beam/pulse/heavy/on_hit(atom/target, blocked = 0, hit_zone)
life -= 10
if(life > 0)
. = -1
@@ -90,7 +86,6 @@
legacy = 1
luminosity = 2
animate_movement = SLIDE_STEPS
impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser
/obj/item/projectile/beam/emitter/singularity_pull()
return //don't want the emitters to miss
@@ -107,7 +102,6 @@
damage_type = STAMINA
flag = "laser"
var/suit_types = list(/obj/item/clothing/suit/redtag, /obj/item/clothing/suit/bluetag)
impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser
/obj/item/projectile/beam/lasertag/on_hit(atom/target, blocked = 0)
. = ..()
@@ -120,7 +114,6 @@
/obj/item/projectile/beam/lasertag/redtag
icon_state = "laser"
suit_types = list(/obj/item/clothing/suit/bluetag)
impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser
/obj/item/projectile/beam/lasertag/bluetag
icon_state = "bluelaser"
@@ -131,15 +124,12 @@
icon_state = "purple_laser"
damage = 200
damage_type = BURN
impact_effect_type = /obj/effect/overlay/temp/impact_effect/purple_laser
/obj/item/projectile/beam/instakill/blue
icon_state = "blue_laser"
impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser
/obj/item/projectile/beam/instakill/red
icon_state = "red_laser"
impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser
/obj/item/projectile/beam/instakill/on_hit(atom/target)
. = ..()
+14 -29
View File
@@ -6,7 +6,6 @@
nodamage = 0
flag = "bullet"
hitsound_wall = "ricochet"
impact_effect_type = /obj/effect/overlay/temp/impact_effect
/obj/item/projectile/bullet/weakbullet //beanbag, heavy stamina damage
damage = 5
@@ -71,20 +70,6 @@
/obj/item/projectile/bullet/midbullet3
damage = 30
/obj/item/projectile/bullet/midbullet3/hp
damage = 40
armour_penetration = -50
/obj/item/projectile/bullet/midbullet3/ap
damage = 27
armour_penetration = 40
/obj/item/projectile/bullet/midbullet3/fire/on_hit(atom/target, blocked = 0)
if(..(target, blocked))
var/mob/living/M = target
M.adjust_fire_stacks(1)
M.IgniteMob()
/obj/item/projectile/bullet/heavybullet
damage = 35
@@ -189,11 +174,11 @@
create_reagents(50)
reagents.set_reacting(FALSE)
/obj/item/projectile/bullet/dart/on_hit(atom/target, blocked = 0)
/obj/item/projectile/bullet/dart/on_hit(atom/target, blocked = 0, hit_zone)
if(iscarbon(target))
var/mob/living/carbon/M = target
if(blocked != 100) // not completely blocked
if(M.can_inject(null, 0, def_zone, piercing)) // Pass the hit zone to see if it can inject by whether it hit the head or the body.
if(M.can_inject(null,0,hit_zone,piercing)) // Pass the hit zone to see if it can inject by whether it hit the head or the body.
..()
reagents.reaction(M, INJECT)
reagents.trans_to(M, reagents.total_volume)
@@ -203,7 +188,7 @@
target.visible_message("<span class='danger'>The [name] was deflected!</span>", \
"<span class='userdanger'>You were protected against the [name]!</span>")
..(target, blocked)
..(target, blocked, hit_zone)
reagents.set_reacting(TRUE)
reagents.handle_reactions()
return 1
@@ -217,8 +202,13 @@
//This one is for future syringe guns update
/obj/item/projectile/bullet/dart/syringe
name = "syringe"
icon = 'icons/obj/chemical.dmi'
icon_state = "syringeproj"
//Piercing Syringe
/obj/item/projectile/bullet/dart/syringe/piercing
piercing = 1
/obj/item/projectile/bullet/neurotoxin
name = "neurotoxin spit"
icon_state = "neurotoxin"
@@ -237,15 +227,13 @@
//// SNIPER BULLETS
/obj/item/projectile/bullet/sniper
speed = 0 //360 alwaysscope.
damage = 70
stun = 5
weaken = 5
dismemberment = 50
armour_penetration = 50
var/breakthings = TRUE
/obj/item/projectile/bullet/sniper/on_hit(atom/target, blocked = 0)
/obj/item/projectile/bullet/sniper/on_hit(atom/target, blocked = 0, hit_zone)
if((blocked != 100) && (!ismob(target) && breakthings))
target.ex_act(rand(1,2))
return ..()
@@ -255,12 +243,11 @@
armour_penetration = 0
nodamage = 1
stun = 0
dismemberment = 0
weaken = 0
breakthings = FALSE
/obj/item/projectile/bullet/sniper/soporific/on_hit(atom/target, blocked = 0)
if((blocked != 100) && isliving(target))
/obj/item/projectile/bullet/sniper/soporific/on_hit(atom/target, blocked = 0, hit_zone)
if((blocked != 100) && istype(target, /mob/living))
var/mob/living/L = target
L.Sleeping(20)
return ..()
@@ -270,11 +257,10 @@
armour_penetration = 15
damage = 15
stun = 0
dismemberment = 0
weaken = 0
breakthings = FALSE
/obj/item/projectile/bullet/sniper/haemorrhage/on_hit(atom/target, blocked = 0)
/obj/item/projectile/bullet/sniper/haemorrhage/on_hit(atom/target, blocked = 0, hit_zone)
if((blocked != 100) && iscarbon(target))
var/mob/living/carbon/C = target
C.bleed(100)
@@ -286,7 +272,6 @@
name = "penetrator round"
damage = 60
forcedodge = 1
dismemberment = 0 //It goes through you cleanly.
stun = 0
weaken = 0
breakthings = FALSE
@@ -304,7 +289,7 @@
damage = 20
armour_penetration = 0
/obj/item/projectile/bullet/saw/bleeding/on_hit(atom/target, blocked = 0)
/obj/item/projectile/bullet/saw/bleeding/on_hit(atom/target, blocked = 0, hit_zone)
. = ..()
if((blocked != 100) && iscarbon(target))
var/mob/living/carbon/C = target
@@ -322,7 +307,7 @@
damage = 7
armour_penetration = 0
/obj/item/projectile/bullet/saw/incen/Move()
obj/item/projectile/bullet/saw/incen/Move()
..()
var/turf/location = get_turf(src)
if(location)
+19 -19
View File
@@ -29,7 +29,7 @@
if(C.dna && C.dna.check_mutation(HULK))
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
else if(C.status_flags & CANWEAKEN)
addtimer(C, "do_jitter_animation", 5, TIMER_NORMAL, jitter)
addtimer(C, "do_jitter_animation", 5, FALSE, jitter)
/obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet
var/datum/effect_system/spark_spread/sparks = new /datum/effect_system/spark_spread
@@ -68,10 +68,11 @@
icon = 'icons/effects/effects.dmi'
icon_state = "dragnetfield"
anchored = 1
unacidable = 1
/obj/effect/nettingportal/New()
..()
SetLuminosity(3)
set_light(3)
var/obj/item/device/radio/beacon/teletarget = null
for(var/obj/machinery/computer/teleporter/com in machines)
if(com.target)
@@ -142,7 +143,6 @@
damage = 20
damage_type = CLONE
irradiate = 10
impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser
/obj/item/projectile/energy/dart //ninja throwing dart
name = "dart"
@@ -161,30 +161,30 @@
weaken = 5
stutter = 5
/obj/item/projectile/energy/bolt/halloween
name = "candy corn"
icon_state = "candy_corn"
/obj/item/projectile/energy/bolt/large
damage = 20
/obj/item/projectile/energy/tesla_revolver
name = "tesla bolt"
icon_state = "tesla_projectile"
impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser
/obj/item/ammo_casing/energy/plasma
projectile_type = /obj/item/projectile/plasma
select_name = "plasma burst"
fire_sound = 'sound/weapons/pulse.ogg'
/obj/item/ammo_casing/energy/plasma/adv
projectile_type = /obj/item/projectile/plasma/adv
/obj/item/projectile/energy/shock_revolver
name = "shock bolt"
icon_state = "purple_laser"
var/chain
/obj/item/projectile/energy/tesla_revolver/fire(setAngle)
if(firer)
chain = firer.Beam(src, icon_state = "lightning[rand(1, 12)]", time = INFINITY, maxdistance = INFINITY)
/obj/item/ammo_casing/energy/shock_revolver/ready_proj(atom/target, mob/living/user, quiet, zone_override = "")
..()
var/obj/item/projectile/hook/P = BB
spawn(1)
P.chain = P.Beam(user,icon_state="purple_lightning",icon = 'icons/effects/effects.dmi',time=1000, maxdistance = 30)
/obj/item/projectile/energy/tesla_revolver/on_hit(atom/target)
/obj/item/projectile/energy/shock_revolver/on_hit(atom/target)
. = ..()
if(isliving(target))
tesla_zap(src, 3, 10000)
qdel(src)
/obj/item/projectile/energy/tesla_revolver/Destroy()
qdel(chain)
return ..()
+24 -77
View File
@@ -24,46 +24,27 @@
damage_type = BRUTE
nodamage = 0
//explosion values
var/exp_heavy = 0
var/exp_light = 2
var/exp_flash = 3
var/exp_fire = 2
/obj/item/projectile/magic/fireball/Range()
var/turf/T1 = get_step(src,turn(dir, -45))
var/turf/T2 = get_step(src,turn(dir, 45))
var/turf/T3 = get_step(src,dir)
var/mob/living/L = locate(/mob/living) in T1 //if there's a mob alive in our front right diagonal, we hit it.
if(L && L.stat != DEAD)
Bump(L,1) //Magic Bullet #teachthecontroversy
Bump(L) //Magic Bullet #teachthecontroversy
return
L = locate(/mob/living) in T2
if(L && L.stat != DEAD)
Bump(L,1)
return
L = locate(/mob/living) in T3
if(L && L.stat != DEAD)
Bump(L,1)
Bump(L)
return
..()
/obj/item/projectile/magic/fireball/on_hit(target)
. = ..()
var/turf/T = get_turf(target)
explosion(T, -1, exp_heavy, exp_light, exp_flash, 0, flame_range = exp_fire)
explosion(T, -1, 0, 2, 3, 0, flame_range = 2)
if(ismob(target)) //multiple flavors of pain
var/mob/living/M = target
M.take_overall_damage(0,10) //between this 10 burn, the 10 brute, the explosion brute, and the onfire burn, your at about 65 damage if you stop drop and roll immediately
/obj/item/projectile/magic/fireball/infernal
name = "infernal fireball"
exp_heavy = -1
exp_light = -1
exp_flash = 4
exp_fire= 5
/obj/item/projectile/magic/resurrection
name = "bolt of resurrection"
icon_state = "ion"
@@ -126,7 +107,7 @@
OpenDoor(target)
else
var/turf/T = get_turf(target)
if(isclosedturf(T) && !istype(T, /turf/closed/indestructible))
if(istype(T,/turf/closed) && !istype(T, /turf/closed/indestructible))
CreateDoor(T)
/obj/item/projectile/magic/door/proc/CreateDoor(turf/T)
@@ -151,7 +132,6 @@
/obj/item/projectile/magic/change/on_hit(atom/change)
. = ..()
wabbajack(change)
qdel(src)
/proc/wabbajack(mob/living/M)
if(!istype(M) || M.stat == DEAD || M.notransform || (GODMODE & M.status_flags))
@@ -165,7 +145,7 @@
var/list/contents = M.contents.Copy()
if(iscyborg(M))
if(istype(M, /mob/living/silicon/robot))
var/mob/living/silicon/robot/Robot = M
if(Robot.mmi)
qdel(Robot.mmi)
@@ -212,7 +192,7 @@
if("animal")
var/path
if(prob(50))
var/beast = pick("carp","bear","mushroom","statue", "bat", "goat","killertomato", "spiderbase", "spiderhunter", "blobbernaut", "magicarp", "chaosmagicarp", "watcher", "goliath", "headcrab", "morph", "stickman", "stickdog", "lesserdragon")
var/beast = pick("carp","bear","mushroom","statue", "bat", "goat","killertomato", "spiderbase", "spiderhunter", "blobbernaut", "magicarp", "chaosmagicarp")
switch(beast)
if("carp")
path = /mob/living/simple_animal/hostile/carp
@@ -238,20 +218,6 @@
path = /mob/living/simple_animal/hostile/carp/ranged
if("chaosmagicarp")
path = /mob/living/simple_animal/hostile/carp/ranged/chaos
if("watcher")
path = /mob/living/simple_animal/hostile/asteroid/basilisk/watcher
if("goliath")
path = /mob/living/simple_animal/hostile/asteroid/goliath/beast
if("headcrab")
path = /mob/living/simple_animal/hostile/headcrab
if("morph")
path = /mob/living/simple_animal/hostile/morph
if("stickman")
path = /mob/living/simple_animal/hostile/stickman
if("stickdog")
path = /mob/living/simple_animal/hostile/stickman/dog
if("lesserdragon")
path = /mob/living/simple_animal/hostile/megafauna/dragon/lesser
else
var/animal = pick("parrot","corgi","crab","pug","cat","mouse","chicken","cow","lizard","chick","fox","butterfly","cak")
switch(animal)
@@ -316,7 +282,7 @@
M.attack_log += text("\[[time_stamp()]\] <font color='orange'>[M.real_name] ([M.ckey]) became [new_mob.real_name].</font>")
new_mob.a_intent = INTENT_HARM
new_mob.a_intent = "harm"
M.wabbajack_act(new_mob)
@@ -333,53 +299,34 @@
damage_type = BURN
nodamage = 1
/obj/item/projectile/magic/animate/on_hit(atom/target, blocked = 0)
/obj/item/projectile/magic/animate/Bump(atom/change)
..()
if((istype(target, /obj/item) || istype(target, /obj/structure)) && !is_type_in_list(target, protected_objects))
if(istype(target, /obj/structure/statue/petrified))
var/obj/structure/statue/petrified/P = target
if(P.petrified_mob)
var/mob/living/L = P.petrified_mob
var/mob/living/simple_animal/hostile/statue/S = new (P.loc, firer)
S.name = "statue of [L.name]"
if(istype(change, /obj/item) || istype(change, /obj/structure) && !is_type_in_list(change, protected_objects))
if(istype(change, /obj/structure/closet/statue))
for(var/mob/living/carbon/human/H in change.contents)
var/mob/living/simple_animal/hostile/statue/S = new /mob/living/simple_animal/hostile/statue(change.loc, firer)
S.name = "statue of [H.name]"
S.faction = list("\ref[firer]")
S.icon = P.icon
S.icon_state = P.icon_state
S.overlays = P.overlays
S.color = P.color
S.atom_colours = P.atom_colours.Copy()
if(L.mind)
L.mind.transfer_to(S)
S.icon = change.icon
S.icon_state = change.icon_state
S.overlays = change.overlays
S.color = change.color
if(H.mind)
H.mind.transfer_to(S)
S << "<span class='userdanger'>You are an animate statue. You cannot move when monitored, but are nearly invincible and deadly when unobserved! Do not harm [firer.name], your creator.</span>"
P.loc = S
H = change
H.loc = S
qdel(src)
return
else
var/obj/O = target
var/obj/O = change
if(istype(O, /obj/item/weapon/gun))
new /mob/living/simple_animal/hostile/mimic/copy/ranged(O.loc, O, firer)
else
new /mob/living/simple_animal/hostile/mimic/copy(O.loc, O, firer)
else if(istype(target, /mob/living/simple_animal/hostile/mimic/copy))
else if(istype(change, /mob/living/simple_animal/hostile/mimic/copy))
// Change our allegiance!
var/mob/living/simple_animal/hostile/mimic/copy/C = target
var/mob/living/simple_animal/hostile/mimic/copy/C = change
C.ChangeOwner(firer)
/obj/item/projectile/magic/spellblade
name = "blade energy"
icon_state = "lavastaff"
damage = 15
damage_type = BURN
flag = "magic"
dismemberment = 50
nodamage = 0
/obj/item/projectile/magic/arcane_barrage
name = "arcane bolt"
icon_state = "arcane_barrage"
damage = 20
damage_type = BURN
nodamage = 0
armour_penetration = 0
flag = "magic"
+13 -26
View File
@@ -1,9 +1,8 @@
/obj/item/projectile/bullet/reusable
name = "reusable bullet"
desc = "How do you even reuse a bullet?"
var/ammo_type = /obj/item/ammo_casing/caseless
var/ammo_type = /obj/item/ammo_casing/caseless/
var/dropped = 0
impact_effect_type = null
/obj/item/projectile/bullet/reusable/on_hit(atom/target, blocked = 0)
. = ..()
@@ -15,8 +14,7 @@
/obj/item/projectile/bullet/reusable/proc/handle_drop()
if(!dropped)
var/turf/T = get_turf(src)
new ammo_type(T)
new ammo_type(src.loc)
dropped = 1
/obj/item/projectile/bullet/reusable/magspear
@@ -33,45 +31,34 @@
damage_type = OXY
nodamage = 1
icon = 'icons/obj/guns/toy.dmi'
icon_state = "foamdart_proj"
icon_state = "foamdart"
ammo_type = /obj/item/ammo_casing/caseless/foam_dart
range = 10
var/modified = 0
var/obj/item/weapon/pen/pen = null
/obj/item/projectile/bullet/reusable/foam_dart/handle_drop()
if(dropped)
return
var/turf/T = get_turf(src)
dropped = 1
var/obj/item/ammo_casing/caseless/foam_dart/newcasing = new ammo_type(T)
newcasing.modified = modified
var/obj/item/projectile/bullet/reusable/foam_dart/newdart = newcasing.BB
newdart.modified = modified
newdart.damage = damage
newdart.nodamage = nodamage
newdart.damage_type = damage_type
var/obj/item/ammo_casing/caseless/foam_dart/newdart = new ammo_type(src.loc)
var/obj/item/ammo_casing/caseless/foam_dart/old_dart = ammo_casing
newdart.modified = old_dart.modified
if(pen)
newdart.pen = pen
pen.forceMove(newdart)
var/obj/item/projectile/bullet/reusable/foam_dart/newdart_FD = newdart.BB
newdart_FD.pen = pen
pen.loc = newdart_FD
pen = null
newdart.BB.damage = damage
newdart.BB.nodamage = nodamage
newdart.BB.damage_type = damage_type
newdart.update_icon()
/obj/item/projectile/bullet/reusable/foam_dart/Destroy()
pen = null
return ..()
/obj/item/projectile/bullet/reusable/foam_dart/riot
name = "riot foam dart"
icon_state = "foamdart_riot_proj"
icon_state = "foamdart_riot"
ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot
stamina = 25
/obj/item/projectile/bullet/reusable/arrow
name = "arrow"
icon_state = "arrow"
ammo_type = /obj/item/ammo_casing/caseless/arrow
range = 10
damage = 25
damage_type = BRUTE
+65 -33
View File
@@ -5,7 +5,6 @@
damage_type = BURN
nodamage = 1
flag = "energy"
impact_effect_type = /obj/effect/overlay/temp/impact_effect/ion
/obj/item/projectile/ion/on_hit(atom/target, blocked = 0)
@@ -43,27 +42,6 @@
explosion(target, -1, 0, 2, 1, 0, flame_range = 3)
return 1
/obj/item/projectile/bullet/a84mm
name ="anti-armour rocket"
desc = "USE A WEEL GUN"
icon_state= "atrocket"
damage = 80
var/anti_armour_damage = 200
armour_penetration = 100
dismemberment = 100
/obj/item/projectile/bullet/a84mm/on_hit(atom/target, blocked = 0)
..()
explosion(target, -1, 1, 3, 1, 0, flame_range = 4)
if(istype(target, /obj/mecha))
var/obj/mecha/M = target
M.take_damage(anti_armour_damage)
if(istype(target, /mob/living/silicon))
var/mob/living/silicon/S = target
S.take_overall_damage(anti_armour_damage*0.75, anti_armour_damage*0.25)
return 1
/obj/item/projectile/temp
name = "freeze beam"
icon_state = "ice_2"
@@ -120,8 +98,8 @@
if(iscarbon(target))
var/mob/living/carbon/C = target
if(C.dna.species.id == "pod")
C.randmuti()
C.randmut()
randmuti(C)
randmut(C)
C.updateappearance()
C.domutcheck()
@@ -143,6 +121,63 @@
M.adjustBrainLoss(20)
M.hallucination += 20
/obj/item/projectile/kinetic
name = "kinetic force"
icon_state = null
damage = 10
damage_type = BRUTE
flag = "bomb"
range = 3
var/splash = 0
/obj/item/projectile/kinetic/super
damage = 11
range = 4
/obj/item/projectile/kinetic/hyper
damage = 12
range = 5
splash = 1
/obj/item/projectile/kinetic/New()
var/turf/proj_turf = get_turf(src)
if(!istype(proj_turf, /turf))
return
var/datum/gas_mixture/environment = proj_turf.return_air()
var/pressure = environment.return_pressure()
if(pressure < 50)
name = "full strength kinetic force"
damage *= 4
..()
/obj/item/projectile/kinetic/on_range()
new /obj/effect/kinetic_blast(src.loc)
..()
/obj/item/projectile/kinetic/on_hit(atom/target)
. = ..()
var/turf/target_turf= get_turf(target)
if(istype(target_turf, /turf/closed/mineral))
var/turf/closed/mineral/M = target_turf
M.gets_drilled(firer)
new /obj/effect/kinetic_blast(target_turf)
if(src.splash)
for(var/turf/T in range(splash, target_turf))
if(istype(T, /turf/closed/mineral))
var/turf/closed/mineral/M = T
M.gets_drilled(firer)
/obj/effect/kinetic_blast
name = "kinetic explosion"
icon = 'icons/obj/projectiles.dmi'
icon_state = "kinetic_blast"
layer = ABOVE_ALL_MOB_LAYER
/obj/effect/kinetic_blast/New()
spawn(4)
qdel(src)
/obj/item/projectile/beam/wormhole
name = "bluespace beam"
icon_state = "spark"
@@ -186,26 +221,23 @@
icon_state = "plasmacutter"
damage_type = BRUTE
damage = 5
range = 3.5 //works as 4, but doubles to 7
dismemberment = 20
impact_effect_type = /obj/effect/overlay/temp/impact_effect/purple_laser
range = 5
/obj/item/projectile/plasma/New()
var/turf/proj_turf = get_turf(src)
if(!isturf(proj_turf))
if(!istype(proj_turf, /turf))
return
var/datum/gas_mixture/environment = proj_turf.return_air()
if(environment)
var/pressure = environment.return_pressure()
if(pressure < 60)
name = "full strength [name]"
name = "full strength plasma blast"
damage *= 4
range *= 2
..()
/obj/item/projectile/plasma/on_hit(atom/target)
. = ..()
if(ismineralturf(target))
if(istype(target, /turf/closed/mineral))
var/turf/closed/mineral/M = target
M.gets_drilled(firer)
Range()
@@ -214,11 +246,11 @@
/obj/item/projectile/plasma/adv
damage = 7
range = 5
range = 7
/obj/item/projectile/plasma/adv/mech
damage = 10
range = 6
range = 8
/obj/item/projectile/gravityrepulse