[MIRROR] Defines damage flags. (Hopefully without 50+ commits) (#491)

* Defines damage flags. (#53158)

* Defines damage flags. (Hopefully without 50+ commits)

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
This commit is contained in:
SkyratBot
2020-08-24 22:52:31 +02:00
committed by GitHub
co-authored by TemporalOroboros
parent a6c3cbb8e3
commit 3bd294f26f
278 changed files with 731 additions and 700 deletions
@@ -1,10 +1,10 @@
/obj/item/ammo_casing/energy
name = "energy weapon lens"
desc = "The part of the gun that makes the laser go pew."
caliber = "energy"
caliber = ENERGY
projectile_type = /obj/projectile/energy
var/e_cost = 100 //The amount of energy a cell needs to expend to create this shot.
var/select_name = "energy"
var/select_name = ENERGY
fire_sound = 'sound/weapons/laser.ogg'
firing_effect_type = /obj/effect/temp_visual/dir_setting/firing_effect/energy
heavy_metal = FALSE
@@ -172,7 +172,7 @@
icon_state = null
damage = 40
damage_type = BRUTE
flag = "bomb"
flag = BOMB
range = 3
log_override = TRUE
@@ -412,7 +412,7 @@
hitsound = 'sound/effects/explosion3.ogg'
damage = 0 //Handled manually.
damage_type = BURN
flag = "energy"
flag = ENERGY
range = 150
jitter = 10
var/obj/item/gun/energy/beam_rifle/gun
@@ -447,7 +447,7 @@
new /obj/effect/hotspot(T)
for(var/obj/O in range(aoe_structure_range, epicenter))
if(!isitem(O))
O.take_damage(aoe_structure_damage * get_damage_coeff(O), BURN, "laser", FALSE)
O.take_damage(aoe_structure_damage * get_damage_coeff(O), BURN, LASER, FALSE)
/obj/projectile/beam/beam_rifle/proc/check_pierce(atom/target)
if(!do_pierce)
@@ -469,7 +469,7 @@
if(structure_pierce < structure_pierce_amount)
if(isobj(AM))
var/obj/O = AM
O.take_damage((impact_structure_damage + aoe_structure_damage) * structure_bleed_coeff * get_damage_coeff(AM), BURN, "energy", FALSE)
O.take_damage((impact_structure_damage + aoe_structure_damage) * structure_bleed_coeff * get_damage_coeff(AM), BURN, ENERGY, FALSE)
pierced[AM] = TRUE
structure_pierce++
return TRUE
@@ -485,7 +485,7 @@
/obj/projectile/beam/beam_rifle/proc/handle_impact(atom/target)
if(isobj(target))
var/obj/O = target
O.take_damage(impact_structure_damage * get_damage_coeff(target), BURN, "laser", FALSE)
O.take_damage(impact_structure_damage * get_damage_coeff(target), BURN, LASER, FALSE)
if(isliving(target))
var/mob/living/L = target
L.adjustFireLoss(impact_direct_damage)
+3 -3
View File
@@ -98,7 +98,7 @@
var/damage = 10
var/damage_type = BRUTE //BRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here
var/nodamage = FALSE //Determines if the projectile will skip any damage inflictions
var/flag = "bullet" //Defines what armor to use when it hits things. Must be set to bullet, laser, energy,or bomb
var/flag = BULLET //Defines what armor to use when it hits things. Must be set to bullet, laser, energy,or bomb
///How much armor this projectile pierces.
var/armour_penetration = 0
var/projectile_type = /obj/projectile
@@ -385,10 +385,10 @@
return FALSE
/obj/projectile/proc/check_ricochet_flag(atom/A)
if((flag in list("energy", "laser")) && (A.flags_ricochet & RICOCHET_SHINY))
if((flag in list(ENERGY, LASER)) && (A.flags_ricochet & RICOCHET_SHINY))
return TRUE
if((flag in list("bomb", "bullet")) && (A.flags_ricochet & RICOCHET_HARD))
if((flag in list(BOMB, BULLET)) && (A.flags_ricochet & RICOCHET_HARD))
return TRUE
return FALSE
+5 -5
View File
@@ -6,7 +6,7 @@
damage_type = BURN
hitsound = 'sound/weapons/sear.ogg'
hitsound_wall = 'sound/weapons/effects/searwall.ogg'
flag = "laser"
flag = LASER
eyeblur = 2
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
light_system = MOVABLE_LIGHT
@@ -73,7 +73,7 @@
/obj/projectile/beam/xray
name = "\improper X-ray beam"
icon_state = "xray"
flag = "rad"
flag = RAD
damage = 15
irradiate = 300
range = 15
@@ -90,7 +90,7 @@
icon_state = "omnilaser"
damage = 30
damage_type = STAMINA
flag = "energy"
flag = ENERGY
hitsound = 'sound/weapons/tap.ogg'
eyeblur = 0
impact_effect_type = /obj/effect/temp_visual/impact_effect/blue_laser
@@ -150,7 +150,7 @@
hitsound = null
damage = 0
damage_type = STAMINA
flag = "laser"
flag = LASER
var/suit_types = list(/obj/item/clothing/suit/redtag, /obj/item/clothing/suit/bluetag)
impact_effect_type = /obj/effect/temp_visual/impact_effect/blue_laser
light_color = LIGHT_COLOR_BLUE
@@ -217,7 +217,7 @@
hitsound = 'sound/weapons/shrink_hit.ogg'
damage = 0
damage_type = STAMINA
flag = "energy"
flag = ENERGY
impact_effect_type = /obj/effect/temp_visual/impact_effect/shrink
light_color = LIGHT_COLOR_BLUE
var/shrink_time = 90
@@ -4,7 +4,7 @@
damage = 60
damage_type = BRUTE
nodamage = FALSE
flag = "bullet"
flag = BULLET
hitsound_wall = "ricochet"
sharpness = SHARP_POINTY
impact_effect_type = /obj/effect/temp_visual/impact_effect
@@ -12,7 +12,7 @@
/obj/projectile/bullet/p50/on_hit(atom/target, blocked = 0)
if(isobj(target) && (blocked != 100) && breakthings)
var/obj/O = target
O.take_damage(80, BRUTE, "bullet", FALSE)
O.take_damage(80, BRUTE, BULLET, FALSE)
return ..()
/obj/projectile/bullet/p50/soporific
@@ -3,6 +3,6 @@
icon_state = "spark"
damage = 0
damage_type = BURN
flag = "energy"
flag = ENERGY
reflectable = REFLECT_NORMAL
impact_effect_type = /obj/effect/temp_visual/impact_effect/energy
@@ -3,7 +3,7 @@
name = "nuclear particle"
icon_state = "nuclear_particle"
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
flag = "rad"
flag = RAD
irradiate = 5000
speed = 0.4
hitsound = 'sound/weapons/emitter2.ogg'
+6 -6
View File
@@ -5,7 +5,7 @@
damage_type = OXY
nodamage = TRUE
armour_penetration = 100
flag = "magic"
flag = MAGIC
/obj/projectile/magic/death
name = "bolt of death"
@@ -352,7 +352,7 @@
icon_state = "lavastaff"
damage = 15
damage_type = BURN
flag = "magic"
flag = MAGIC
dismemberment = 50
nodamage = FALSE
@@ -372,7 +372,7 @@
damage_type = BURN
nodamage = FALSE
armour_penetration = 0
flag = "magic"
flag = MAGIC
hitsound = 'sound/weapons/barragespellhit.ogg'
/obj/projectile/magic/arcane_barrage/on_hit(target)
@@ -389,7 +389,7 @@
name = "locker bolt"
icon_state = "locker"
nodamage = TRUE
flag = "magic"
flag = MAGIC
var/weld = TRUE
var/created = FALSE //prevents creation of more then one locker if it has multiple hits
var/locker_suck = TRUE
@@ -627,7 +627,7 @@
damage_type = BURN
nodamage = FALSE
speed = 0.3
flag = "magic"
flag = MAGIC
var/zap_power = 20000
var/zap_range = 15
@@ -706,7 +706,7 @@
nodamage = FALSE
armour_penetration = 100
temperature = -200 // Cools you down greatly per hit
flag = "magic"
flag = MAGIC
/obj/projectile/magic/nothing
name = "bolt of nothing"
@@ -4,7 +4,7 @@
damage = 0
damage_type = TOX
nodamage = TRUE
flag = "energy"
flag = ENERGY
/obj/projectile/energy/florayield
name = "beta somatoray"
@@ -12,7 +12,7 @@
damage = 0
damage_type = TOX
nodamage = TRUE
flag = "energy"
flag = ENERGY
/obj/projectile/energy/florarevolution
name = "gamma somatoray"
@@ -20,4 +20,4 @@
damage = 0
damage_type = TOX
nodamage = TRUE
flag = "energy"
flag = ENERGY
@@ -4,7 +4,7 @@
damage = 0
damage_type = BURN
nodamage = TRUE
flag = "energy"
flag = ENERGY
impact_effect_type = /obj/effect/temp_visual/impact_effect/ion
var/emp_radius = 1
@@ -5,7 +5,7 @@
damage = 0
damage_type = BRUTE
nodamage = TRUE
flag = "bullet"
flag = BULLET
/obj/projectile/meteor/Bump(atom/A)
if(A == firer)
@@ -5,7 +5,7 @@
damage_type = TOX
nodamage = FALSE
paralyze = 100
flag = "bio"
flag = BIO
impact_effect_type = /obj/effect/temp_visual/impact_effect/neurotoxin
/obj/projectile/neurotoxin/on_hit(atom/target, blocked = FALSE)
@@ -4,7 +4,7 @@
damage = 0
damage_type = BURN
nodamage = FALSE
flag = "energy"
flag = ENERGY
var/temperature = -50 // reduce the body temperature by 50 points
/obj/projectile/temp/on_hit(atom/target, blocked = 0)