Changeling on changeling absorb fix (#51444)

* adds changeling vars

needed due to changeling that absorbs a changeling that absorbs a changeling getting more chems

* Update changeling.dm

changes reset_properties() to reflect things that sohuldn't reset to baseline - this is not pretty

* fix spell error

* spelling error

* add some comment on why change was done

This really speaks for itself in my opinion
This commit is contained in:
Kaffe-work
2020-06-05 23:50:37 +02:00
committed by GitHub
parent 30f37faa43
commit 4e9ad98cb6
2 changed files with 6 additions and 2 deletions
@@ -34,6 +34,8 @@
var/isabsorbing = 0
var/islinking = 0
var/geneticpoints = 10
var/total_geneticspoints = 10
var/total_chem_storage = 75
var/purchasedpowers = list()
var/mimicing = ""
@@ -107,9 +109,9 @@
/datum/antagonist/changeling/proc/reset_properties()
changeling_speak = 0
chosen_sting = null
geneticpoints = initial(geneticpoints)
geneticpoints = total_geneticspoints
sting_range = initial(sting_range)
chem_storage = initial(chem_storage)
chem_storage = total_chem_storage
chem_recharge_rate = initial(chem_recharge_rate)
chem_charges = min(chem_charges, chem_storage)
chem_recharge_slowdown = initial(chem_recharge_slowdown)
@@ -123,9 +123,11 @@
to_chat(user, "<span class='boldnotice'>[target] was one of us. We have absorbed their power.</span>")
target_ling.remove_changeling_powers()
changeling.geneticpoints += round(target_ling.geneticpoints/2)
changeling.total_geneticspoints = changeling.geneticpoints //updates the total sum of genetic points when you absorb another ling
target_ling.geneticpoints = 0
target_ling.canrespec = 0
changeling.chem_storage += round(target_ling.chem_storage/2)
changeling.total_chem_storage = changeling.chem_storage //updates the total sum of chemicals stored for when you absorb another ling
changeling.chem_charges += min(target_ling.chem_charges, changeling.chem_storage)
target_ling.chem_charges = 0
target_ling.chem_storage = 0