mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-24 13:16:18 +01:00
secgun, radfix, etc
secgun-- three types of rounds. lethal, lessthanlethal, flash. lethal is midbullet2. ltl is weakbullet. flash is 5 brute and does not stun, but it makes people who get hit by it and people within two tiles of the tile hit get eyeflashed. the eyeflash is minor unless you score a direct hit, but still disorienting i guess. radiation fix: you once again pass out when you get completely irradiated. the radiation burns damage and cloneloss that very rarely happens with extremely heavy radiation poisoning was given a significant buff. as in you'll actually notice it now. you'll notice it a lot. made it so vamps don't have to breathe. intend to do some fixes. intend to maybe give vamps a maybe 'pretend to be alive' verb that turns their heart on and off. maybe. or maybe they'll just lose their heartbeat. nobreathing is a first step maybe mutagen fix. no more telekinetic pink braces. bumped accuracy up a bit.
This commit is contained in:
@@ -309,9 +309,9 @@
|
||||
if (radiation > 50)
|
||||
damage = 1
|
||||
radiation -= 1 * RADIATION_SPEED_COEFFICIENT
|
||||
if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT))
|
||||
radiation -= 5 * RADIATION_SPEED_COEFFICIENT
|
||||
src << "<span class='warning'>You feel weak.</span>"
|
||||
if(prob(5)) //&& prob(100 * RADIATION_SPEED_COEFFICIENT)) //who did this double percentage thing
|
||||
radiation -= 5 * RADIATION_SPEED_COEFFICIENT //do you understand
|
||||
src << "<span class='warning'>You feel weak.</span>" //5% *10% is never happens ever %. it is worthless.
|
||||
Weaken(3)
|
||||
if(!lying)
|
||||
emote("collapse")
|
||||
@@ -325,13 +325,18 @@
|
||||
if (radiation > 75)
|
||||
radiation -= 1 * RADIATION_SPEED_COEFFICIENT
|
||||
damage = 3
|
||||
if(prob(5))
|
||||
take_overall_damage(0, 5 * RADIATION_SPEED_COEFFICIENT, used_weapon = "Radiation Burns")
|
||||
if(prob(1))
|
||||
if(prob(3)) //originally 5% chance to take .5 burn. now 3% chance to take 5 burn.
|
||||
take_overall_damage(0, 5, used_weapon = "Radiation Burns") // formerly 5 * RADIATION_SPEED_COEFFICIENT
|
||||
if(prob(2)) //originally 1% chance to take .5 cloneloss. now 2% chance to take 5 cloneloss.
|
||||
src << "<span class='warning'>You feel strange!</span>"
|
||||
adjustCloneLoss(5 * RADIATION_SPEED_COEFFICIENT)
|
||||
adjustCloneLoss(5) // * RADIATION_SPEED_COEFFICIENT //a 1% chance to take 5 cloneloss * .1 for .5 really. no thanks
|
||||
emote("gasp")
|
||||
|
||||
if (radiation > 98 && paralysis < 2) //clamp value + spamprotect
|
||||
Paralyse(10) //it used to be *collapse spam. this is quiet and spamless.
|
||||
src << "\red You black out!"
|
||||
make_jittery(250)
|
||||
|
||||
if(damage)
|
||||
adjustToxLoss(damage * RADIATION_SPEED_COEFFICIENT)
|
||||
updatehealth()
|
||||
@@ -339,10 +344,13 @@
|
||||
var/datum/organ/external/O = pick(organs)
|
||||
if(istype(O)) O.add_autopsy_data("Radiation Poisoning", damage)
|
||||
|
||||
|
||||
|
||||
proc/breathe()
|
||||
if(reagents.has_reagent("lexorin")) return
|
||||
if(istype(loc, /obj/machinery/atmospherics/unary/cryo_cell)) return
|
||||
if(species && (species.flags & NO_BREATHE || species.flags & IS_SYNTHETIC)) return
|
||||
if(mind && mind.vampire) return
|
||||
|
||||
var/datum/gas_mixture/environment = loc.return_air()
|
||||
var/datum/gas_mixture/breath
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
var/miss_chance = 15
|
||||
if (O.throw_source)
|
||||
var/distance = get_dist(O.throw_source, loc)
|
||||
miss_chance = min(15*(distance-2), 0)
|
||||
miss_chance = min(15*(distance-5), 0)
|
||||
|
||||
if (prob(miss_chance))
|
||||
visible_message("\blue \The [O] misses [src] narrowly!")
|
||||
|
||||
@@ -34,6 +34,27 @@
|
||||
/obj/item/ammo_magazine/c45r/empty
|
||||
max_ammo = 0
|
||||
|
||||
/obj/item/ammo_magazine/c45s
|
||||
name = "magazine (.45)"
|
||||
icon_state = "45"
|
||||
ammo_type = "/obj/item/ammo_casing/c45s"
|
||||
max_ammo = 7
|
||||
multiple_sprites = 1
|
||||
|
||||
/obj/item/ammo_magazine/c45s/nonlethal
|
||||
name = "magazine (.45)"
|
||||
icon_state = "45"
|
||||
ammo_type = "/obj/item/ammo_casing/c45s/nonlethal"
|
||||
max_ammo = 7
|
||||
multiple_sprites = 1
|
||||
|
||||
/obj/item/ammo_magazine/c45s/flash
|
||||
name = "magazine (.45) FLSH"
|
||||
icon_state = "45"
|
||||
ammo_type = "/obj/item/ammo_casing/c45s/flash"
|
||||
max_ammo = 7
|
||||
multiple_sprites = 1
|
||||
|
||||
/obj/item/ammo_magazine/a418
|
||||
name = "ammo box (.418)"
|
||||
icon_state = "418"
|
||||
|
||||
@@ -53,6 +53,21 @@
|
||||
caliber = ".45"
|
||||
projectile_type = "/obj/item/projectile/bullet/weakbullet/rubber"
|
||||
|
||||
/obj/item/ammo_casing/c45s
|
||||
desc = "A .45 LTL round casing."
|
||||
caliber = ".45"
|
||||
projectile_type = "/obj/item/projectile/bullet/weakbullet/rubber"
|
||||
|
||||
/obj/item/ammo_casing/c45s/flash
|
||||
desc = "A .45 FLSH round casing."
|
||||
caliber = ".45"
|
||||
projectile_type = "/obj/item/projectile/bullet/weakbullet/flash"
|
||||
|
||||
/obj/item/ammo_casing/c45s/lethal
|
||||
desc = "A .45 LTHL round casing."
|
||||
caliber = ".45"
|
||||
projectile_type = "/obj/item/projectile/bullet/midbullet2"
|
||||
|
||||
/obj/item/ammo_casing/a12mm
|
||||
desc = "A 12mm bullet casing."
|
||||
caliber = "12mm"
|
||||
|
||||
@@ -97,6 +97,15 @@
|
||||
user << "<span class='notice'>The Magazine falls out and clatters on the floor!</span>"
|
||||
return
|
||||
|
||||
/obj/item/weapon/gun/projectile/detective/secgun
|
||||
desc = "a sec gun that shoots big sec bullets for taking down big sec criminals. more like taking dead"
|
||||
name = "\improper sec gun"
|
||||
caliber = ".45"
|
||||
icon_state = "secgun"
|
||||
max_shells = 7
|
||||
ammo_type = "/obj/item/ammo_casing/c45s"
|
||||
load_method = 2
|
||||
|
||||
|
||||
/obj/item/weapon/gun/projectile/mateba
|
||||
name = "mateba"
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
return 0// nope.avi
|
||||
|
||||
var/distance = get_dist(starting,loc)
|
||||
var/miss_modifier = -60
|
||||
var/miss_modifier = -75
|
||||
|
||||
if (istype(shot_from,/obj/item/weapon/gun)) //If you aim at someone beforehead, it'll hit more often.
|
||||
var/obj/item/weapon/gun/daddy = shot_from //Kinda balanced by fact you need like 2 seconds to aim
|
||||
|
||||
@@ -87,4 +87,40 @@
|
||||
|
||||
/obj/item/projectile/bullet/chameleon
|
||||
damage = 1 // stop trying to murderbone with a fake gun dumbass!!!
|
||||
embed = 0 // nope
|
||||
embed = 0 // nope
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet/flash
|
||||
name = "flash round"
|
||||
damage = 5
|
||||
agony = 0
|
||||
/obj/item/projectile/bullet/weakbullet/flash/on_hit(var/atom/target, var/blocked = 0)
|
||||
playsound(src.loc, 'sound/weapons/flash.ogg', 100, 1)
|
||||
|
||||
if(ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
if(!H.eyecheck() > 0)
|
||||
if(!H.blinded)
|
||||
flick("e_flash", H:flash)
|
||||
H << "\red The flash round blinds you!"
|
||||
sleep (10)
|
||||
flick("e_flash", H:flash)
|
||||
sleep (10)
|
||||
flick("e_flash", H:flash)
|
||||
H << "\red nooooooo"
|
||||
|
||||
for(var/mob/living/carbon/human/M in oviewers(2, target))
|
||||
if(!M.eyecheck() > 0)
|
||||
if(!M.blinded)
|
||||
flick("flash", M:flash)
|
||||
M << "\red The flash round blinds you!"
|
||||
/* sleep (5)
|
||||
flick("e_flash", M:flash)
|
||||
sleep (8)
|
||||
flick("e_flash", M:flash)
|
||||
sleep (10)
|
||||
flick("e_flash", M:flash)
|
||||
sleep (15)
|
||||
flick("e_flash", M:flash)
|
||||
sleep (20)
|
||||
flick("e_flash", M:flash)
|
||||
M << "\red nooooooo!"*/
|
||||
@@ -1662,9 +1662,10 @@ datum
|
||||
color = "#13BC5E" // rgb: 19, 188, 94
|
||||
toxpwr = 0
|
||||
|
||||
reaction_mob(var/mob/living/carbon/M, var/method=TOUCH, var/volume)
|
||||
reaction_mob(var/mob/living/carbon/M, var/method=TOUCH, var/volume, var/alien)
|
||||
if(!..()) return
|
||||
if(!istype(M) || !M.dna) return //No robots, AIs, aliens, Ians or other mobs should be affected by this.
|
||||
if(alien && alien == IS_SYNTHETIC) return
|
||||
src = null
|
||||
if((method==TOUCH && prob(33)) || method==INGEST)
|
||||
randmuti(M)
|
||||
@@ -2065,7 +2066,7 @@ datum
|
||||
description = "A very corrosive mineral acid with the molecular formula H2SO4."
|
||||
reagent_state = LIQUID
|
||||
color = "#DB5008" // rgb: 219, 80, 8
|
||||
toxpwr = 1
|
||||
toxpwr = 2
|
||||
var/meltprob = 10
|
||||
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
@@ -2150,7 +2151,7 @@ datum
|
||||
description = "Polytrinic acid is a an extremely corrosive chemical substance."
|
||||
reagent_state = LIQUID
|
||||
color = "#8E18A9" // rgb: 142, 24, 169
|
||||
toxpwr = 2
|
||||
toxpwr = 3
|
||||
meltprob = 30
|
||||
|
||||
toxin/philodexphid
|
||||
|
||||
Reference in New Issue
Block a user