Merge pull request #5096 from VOREStation/upstream-merge-6096

[MIRROR] Changes way syringes interact with containers
This commit is contained in:
Novacat
2019-04-18 14:02:51 -04:00
committed by GitHub
2 changed files with 49 additions and 10 deletions
@@ -171,8 +171,11 @@
to_chat(user, "<span class='danger'>You cannot inject a robotic limb.</span>")
return
var/warmup_time = 0 //None if we're using this on ourselves.
var/cycle_time = injtime*0.33 //33% of the time slept between 5u doses
var/warmup_time = 0 //0 for containers
if(ismob(target))
warmup_time = cycle_time //If the target is another mob, this gets overwritten
if(ismob(target) && target != user)
warmup_time = injtime*0.66 //66% of the time is warmup
@@ -201,15 +204,15 @@
var/trans = 0
var/contained = reagentlist()
while(reagents.total_volume)
if(ismob(target))
trans += reagents.trans_to_mob(target, amount_per_transfer_from_this, CHEM_BLOOD)
else
trans += reagents.trans_to_obj(target, amount_per_transfer_from_this)
update_icon()
if(!reagents.total_volume || !do_after(user,cycle_time,target))
break
if(ismob(target))
while(reagents.total_volume)
trans += reagents.trans_to_mob(target, amount_per_transfer_from_this, CHEM_BLOOD)
update_icon()
if(!reagents.total_volume || !do_after(user,cycle_time,target))
break
else
trans += reagents.trans_to_obj(target, amount_per_transfer_from_this)
if (reagents.total_volume <= 0 && mode == SYRINGE_INJECT)
mode = SYRINGE_DRAW
update_icon()