Adds effects to upgrading the Somatoray

The chance of a mutation is now multiplied by the tier of laser used.
This commit is contained in:
FartMaster69420
2021-11-16 16:28:59 -05:00
parent b0804eed80
commit 40f963ea22
3 changed files with 27 additions and 11 deletions
+17 -10
View File
@@ -217,17 +217,24 @@
return
//Override for somatoray projectiles.
if(istype(Proj ,/obj/item/projectile/energy/floramut)&& prob(20))
if(istype(Proj, /obj/item/projectile/energy/floramut/gene))
var/obj/item/projectile/energy/floramut/gene/G = Proj
if(seed)
seed = seed.diverge_mutate_gene(G.gene, get_turf(loc)) //get_turf just in case it's not in a turf.
else
mutate(1)
var/mutchance = 15
if(istype(Proj ,/obj/item/projectile/energy/floramut))
var/obj/item/projectile/energy/floramut/GM = Proj
mutchance *= GM.lasermod
if(prob(mutchance))
if(istype(Proj, /obj/item/projectile/energy/floramut/gene))
var/obj/item/projectile/energy/floramut/gene/G = Proj
if(seed)
seed = seed.diverge_mutate_gene(G.gene, get_turf(loc)) //get_turf just in case it's not in a turf.
else
mutate(1)
return
else if(istype(Proj ,/obj/item/projectile/energy/florayield))
var/obj/item/projectile/energy/floramut/GY = Proj
mutchance *= GY.lasermod
if(prob(mutchance))
yield_mod = min(10,yield_mod+rand(1,2))
return
else if(istype(Proj ,/obj/item/projectile/energy/florayield) && prob(20))
yield_mod = min(10,yield_mod+rand(1,2))
return
..()
@@ -120,8 +120,16 @@
/obj/item/weapon/gun/energy/floragun/consume_next_projectile()
. = ..()
var/obj/item/projectile/energy/floramut/gene/G = .
var/obj/item/projectile/energy/florayield/GY = .
var/obj/item/projectile/energy/floramut/GM = .
if(istype(G))
G.gene = gene
G.lasermod = emitter.rating
else if(istype(GY))
GY.lasermod = emitter.rating
else if(istype(GM))
GM.lasermod = emitter.rating
/obj/item/weapon/gun/energy/meteorgun
name = "meteor gun"
@@ -138,7 +138,7 @@
light_power = 0.5
light_color = "#33CC00"
impact_effect_type = /obj/effect/temp_visual/impact_effect/monochrome_laser
var/lasermod = 0
combustion = FALSE
/obj/item/projectile/energy/floramut/on_hit(var/atom/target, var/blocked = 0)
@@ -195,6 +195,7 @@
light_power = 0.5
light_color = "#FFFFFF"
impact_effect_type = /obj/effect/temp_visual/impact_effect/monochrome_laser
var/lasermod = 0
/obj/item/projectile/energy/florayield/on_hit(var/atom/target, var/blocked = 0)
var/mob/living/M = target