mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-26 06:22:26 +01:00
Technomancer Bugfix Extravaganza (#22873)
Technomancers, you're up. changes: - bugfix: "Fixes Mend Synthetic not repairing synthetic/robotic limbs correctly." - bugfix: "Fixes Dispel not removing Technomancer effects from its target." - bugfix: "Fixes Corona not making targets glow or easier to hit." - bugfix: "Fixes Resurrect not enforcing its maximum time-since-death limit." - bugfix: "Fixes Mend Internals skipping organic body parts because it used old bitflags." - bugfix: "Fixes Shield's scepter enhancement being straight up ignored." - bugfix: "Fixes Energy Siphon overfilling synthetic internal cells." - bugfix: "Fixes Audible Deception playing on the user instead of the targeted turf, defeating the entire point of it." - bugfix: "Fixes a bunch of spells not actually ending immediately when energy runs out (and potential harddels.)"
This commit is contained in:
@@ -349,11 +349,20 @@ GLOBAL_LIST_INIT(organ_rel_size, list(
|
||||
|
||||
return target.calculate_zone_with_miss_chance(zone, miss_chance_mod)
|
||||
|
||||
/mob/proc/get_modifier_miss_chance_modifier()
|
||||
if(!modifiers)
|
||||
return 0
|
||||
var/total_modifier = 0
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
if(M.active)
|
||||
total_modifier += M.miss_chance_modifier
|
||||
return total_modifier
|
||||
|
||||
/mob/proc/calculate_zone_with_miss_chance(var/zone, var/miss_chance_mod)
|
||||
var/miss_chance = 10
|
||||
if (zone in GLOB.base_miss_chance)
|
||||
miss_chance = GLOB.base_miss_chance[zone]
|
||||
miss_chance = max(miss_chance + miss_chance_mod, 0)
|
||||
miss_chance = max(miss_chance + miss_chance_mod + get_modifier_miss_chance_modifier(), 0)
|
||||
if(prob(miss_chance))
|
||||
if(prob(70))
|
||||
return null
|
||||
@@ -367,7 +376,7 @@ GLOBAL_LIST_INIT(organ_rel_size, list(
|
||||
var/miss_chance = 10
|
||||
if(zone in GLOB.base_miss_chance)
|
||||
miss_chance = GLOB.base_miss_chance[zone]
|
||||
miss_chance = max(miss_chance + miss_chance_mod, 0)
|
||||
miss_chance = max(miss_chance + miss_chance_mod + get_modifier_miss_chance_modifier(), 0)
|
||||
if(prob(miss_chance))
|
||||
return pick(GLOB.base_miss_chance)
|
||||
return zone
|
||||
|
||||
Reference in New Issue
Block a user