Patient Healing Suite (script): Difference between revisions

From Elanthipedia
Jump to navigation Jump to search
No edit summary
Line 77: Line 77:
==Changelog==
==Changelog==


*'''4/7/2013''': Fixed potentially lethal error that sometimes ended self-healing prematurely.
*'''2/22/2013''': More Empaths 3.0 tweaks/fixes.
*'''2/22/2013''': More Empaths 3.0 tweaks/fixes.
*'''2/9/2013''': Updated for Empaths 3.0.
*'''2/9/2013''': Updated for Empaths 3.0.
Line 1,699: Line 1,700:
pause
pause
send cast %part reverse
send cast %part reverse
matchre return appears? completely healed\.$
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
match return but it cannot heal what is not injured
matchwait 1
matchwait 1
Line 1,717: Line 1,718:
pause
pause
send cast %part reverse
send cast %part reverse
matchre return appears? completely healed\.$
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
match return but it cannot heal what is not injured
matchwait 1
matchwait 1
Line 1,738: Line 1,739:
pause
pause
send cast %part reverse
send cast %part reverse
matchre return appears? completely healed\.$
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
match return but it cannot heal what is not injured
matchwait 1
matchwait 1
Line 1,756: Line 1,757:
pause
pause
send cast %part reverse
send cast %part reverse
matchre return appears? completely healed\.$
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
match return but it cannot heal what is not injured
matchwait 1
matchwait 1

Revision as of 18:52, 7 April 2013

Patient Healing Suite (script)
Category utility
Front-end Genie
Author Isharon


Description

This script is a script for advanced Empaths that is designed to safely transfer wounds without over-healing. I began writing this script several months ago, but hidden wounds posed the risk of death until the PERCEIVE HEALTH SELF command was released. Since then, the script has not let me die.

This script should not be used by Empaths who are incapable of using TAKE QUICK and TAKE HALF. If you lose control while trying to take half of a wound, you may die. If you are not using worn cambrinth, you will have to make some modifications to the magic subroutines.

Process

First, it checks whether Refresh is in effect by checking the Refresh variable (triggered by either the power perceive messaging or the spell messaging).

If Refresh is not in effect, it casts Refresh before proceeding. Then it checks your vitality. If it's less than 60%, it will cast Vitality Healing.

Then it sets variables between 0 and 13 for all of the patient's injuries (using the TOUCH output) and the Empath's injuries to critical parts (using the PERCEIVE HEALTH SELF output).

  1. insignificant
  2. negligible
  3. minor
  4. more than minor
  5. harmful
  6. very harmful
  7. damaging
  8. very damaging
  9. severe
  10. very severe
  11. devastating
  12. very devastating
  13. useless


After it sets the wound variables for patient and Empath, it adds the values for critical parts. If the value is greater than 11, an anti-over-healing mechanism is triggered. (Technically, a value of 12 should be survivable, but I erred on the side of caution by setting it to 11.)

Each wound can be handled in one of the following ways:

  • non-critical part <13 -> take quick
  • non-critical part =13 -> heal self -> take quick
  • combined wound <12 -> take quick
  • combined wound >11 & patient's wound <12 -> heal self -> take quick
  • patient's wound >11 & my wound <5 -> take half
  • patient's wound >11 & my wound >4 -> heal self -> take half


When the script decides to heal the Empath's head wound or scar, it harnesses instead of using cambrinth. (If the head wound is damaging or worse, it's impossible to focus on cambrinth.)

At the end of the script, it checks whether you need to tend any wounds, pauses for 10 seconds (to let the wound transfers run their course) and then restarts. (Do not shorten this pause. If the wound variables reset before the wounds have completely transferred, you might over-heal.) The script will loop until the patient is fully healed.

Instructions

Syntax

.TAKE [PATIENT]: The script is case-sensitive. (In other words, if your patient's name is Isharon, you must type Isharon, not ish or isharon. However, you don't have to type the entire name, so Isha would work. (In Genie, you can quickly copy your patient's name to the clipboard by double-clicking it.)

Required Genie Settings

This script relies on triggers to set spell variables and to handle certain issues, such as being knocked over from healing.

#trigger {^Closing the (WIZARD|STORMFRONT) front end|^Your death cry echoes in your brain|^You feel the surge of energy within you ebb away\.$} {#var REFRESH OFF} {buff}
#trigger {^You sense the Refresh spell upon you, which will last for|^Soft waves of a gentle, warm peach color flicker around you\.$|^A surge of renewed strength runs through you, replacing the previous sensation\.$|^You are already being bolstered by a more powerful cast of the refresh spell\.$} {#var REFRESH ON} {buff}
#trigger {^You are unable to take any more wounds from the (.+)\.} {#echo >log #FF0000 You can't transfer more wounds to your $1.}
#trigger {^You can't do that while (kneeling|lying|sitting)|^You must be standing to do that|^You must stand first|^You'll need to stand up} {#send stand;#send $lastcommand}
#trigger {^You can't heal while lying down on the job|^You fall screaming to the ground} {#send sit}
#trigger {^You have no empathic link with .+ and cannot transfer (his|her) wounds} {#send touch $1}
#trigger {you cannot manage to stand} {#send sit;send stand}

The script sometimes uses cambrinth (worn or held). You need to open your character's variables file and add a variable for cambrinth:

#var {cambrinth} {your cambrinth}

Caveats

  • This script will not always prevent you from bleeding to death. If you are going to have a lot of bleeders that you can't tend, I recommend casting Blood Staunching first.
  • If you are not using worn cambrinth, you may want to avoid allowing both your right and left arm or hand to become so injured that you can't hold items. Because the healing subroutines won't end until you get the "appears completely healed" messaging, I don't think that this mistake would be lethal, but it could significantly slow the script. (It would cause you to cast spells without charging cambrinth or harnessing.)

Changelog

  • 4/7/2013: Fixed potentially lethal error that sometimes ended self-healing prematurely.
  • 2/22/2013: More Empaths 3.0 tweaks/fixes.
  • 2/9/2013: Updated for Empaths 3.0.
  • 1/29/2012: Fixed bug that prevented "massive stream" bleeders from being tended.
  • 1/4/2012: Changed "takehalf" subroutine to use quick mode.
  • 6/5/2011: Updated the Refresh triggers to work with the Geniehunter buffing add-on.
  • 4/12/2011: Typing the patient's whole name is no longer required. (The script is still case-sensitive.) If you are using the $patient variable, it's best to type the whole name.
  • 4/3/2011: Fixed bug that prevented "massive" bleeders from being tended.
  • 3/14/2011: This script will now heal your useless-level wounds to non-vital areas. (Previously, the script looped infinitely if you couldn't transfer additional wounds to one of these areas.)
  • 2/26/2011: I added an action that will immediately end the script if the person has no injuries, even if the script is not at the part where it checks whether you're done.
  • 2/11/2011: The script will now only attempt to tend wounds that need to be tended.
  • 2/10/2011: The script will now tell you how many times it has looped. I also removed some unnecessary variable setting.
  • 2/4/2011: The script no longer checks your scars before healing your wounds. (This is not necessary; you can't die from scars unless you are transferring scars from a patient.) The script also uses harness instead of cambrinth, which saves a few seconds of roundtime.

Script

var LOOP 0
action send touch %1 when ^You have no empathic link
action goto done when ^\.\.\. no injuries to speak of
action var poison 0 when ^Your patient does not have any poison in their body
action var disease 0 when ^Your patient does not have any disease
put #var patient %1

refreshcheck:
if $REFRESH = OFF then
{
gosub refresh
}

vhcheck:
if $health < 60 then
{
gosub vh
}

start:
var head.bleed 0
var neck.bleed 0
var chest.bleed 0
var abdo.bleed 0
var back.bleed 0
var tail.bleed 0
var rarm.bleed 0
var larm.bleed 0
var rhnd.bleed 0
var lhnd.bleed 0
var rleg.bleed 0
var lleg.bleed 0
var reye.bleed 0
var leye.bleed 0
var HEAD_MYEW 0
var HEAD_MYIW 0
var HEAD_MYES 0
var HEAD_MYIS 0
var NECK_MYEW 0
var NECK_MYIW 0
var NECK_MYES 0
var NECK_MYIS 0
var CHEST_MYEW 0
var CHEST_MYIW 0
var CHEST_MYES 0
var CHEST_MYIS 0
var ABDOMEN_MYEW 0
var ABDOMEN_MYIW 0
var ABDOMEN_MYES 0
var ABDOMEN_MYIS 0
var BACK_MYEW 0
var BACK_MYIW 0
var BACK_MYES 0
var BACK_MYIS 0
var TAIL_MYEW 0
var TAIL_MYIW 0
var TAIL_MYES 0
var TAIL_MYIS 0
var RIGHT_EYE_MYEW 0
var RIGHT_EYE_MYIW 0
var RIGHT_EYE_MYES 0
var RIGHT_EYE_MYIS 0
var LEFT_EYE_MYEW 0
var LEFT_EYE_MYIW 0
var LEFT_EYE_MYES 0
var LEFT_EYE_MYIS 0
var RIGHT_ARM_MYEW 0
var RIGHT_ARM_MYIW 0
var RIGHT_ARM_MYES 0
var RIGHT_ARM_MYIS 0
var LEFT_ARM_MYEW 0
var LEFT_ARM_MYIW 0
var LEFT_ARM_MYES 0
var LEFT_ARM_MYIS 0
var RIGHT_HAND_MYEW 0
var RIGHT_HAND_MYIW 0
var RIGHT_HAND_MYES 0
var RIGHT_HAND_MYIS 0
var LEFT_HAND_MYEW 0
var LEFT_HAND_MYIW 0
var LEFT_HAND_MYES 0
var LEFT_HAND_MYIS 0
var RIGHT_LEG_MYEW 0
var RIGHT_LEG_MYIW 0
var RIGHT_LEG_MYES 0
var RIGHT_LEG_MYIS 0
var LEFT_LEG_MYEW 0
var LEFT_LEG_MYIW 0
var LEFT_LEG_MYES 0
var LEFT_LEG_MYIS 0
var SKIN_MYEW 0
var SKIN_MYIW 0
var SKIN_MYES 0
var SKIN_MYIS 0
var HEAD_EW 0
var HEAD_IW 0
var HEAD_ES 0
var HEAD_IS 0
var NECK_EW 0
var NECK_IW 0
var NECK_ES 0
var NECK_IS 0
var CHEST_EW 0
var CHEST_IW 0
var CHEST_ES 0
var CHEST_IS 0
var ABDOMEN_EW 0
var ABDOMEN_IW 0
var ABDOMEN_ES 0
var ABDOMEN_IS 0
var BACK_EW 0
var BACK_IW 0
var BACK_ES 0
var BACK_IS 0
var TAIL_EW 0
var TAIL_IW 0
var TAIL_ES 0
var TAIL_IS 0
var RIGHT_EYE_EW 0
var RIGHT_EYE_IW 0
var RIGHT_EYE_ES 0
var RIGHT_EYE_IS 0
var LEFT_EYE_EW 0
var LEFT_EYE_IW 0
var LEFT_EYE_ES 0
var LEFT_EYE_IS 0
var RIGHT_ARM_EW 0
var RIGHT_ARM_IW 0
var RIGHT_ARM_ES 0
var RIGHT_ARM_IS 0
var LEFT_ARM_EW 0
var LEFT_ARM_IW 0
var LEFT_ARM_ES 0
var LEFT_ARM_IS 0
var RIGHT_HAND_EW 0
var RIGHT_HAND_IW 0
var RIGHT_HAND_ES 0
var RIGHT_HAND_IS 0
var LEFT_HAND_EW 0
var LEFT_HAND_IW 0
var LEFT_HAND_ES 0
var LEFT_HAND_IS 0
var RIGHT_LEG_EW 0
var RIGHT_LEG_IW 0
var RIGHT_LEG_ES 0
var RIGHT_LEG_IS 0
var LEFT_LEG_EW 0
var LEFT_LEG_IW 0
var LEFT_LEG_ES 0
var LEFT_LEG_IS 0
var SKIN_EW 0
var SKIN_IW 0
var SKIN_ES 0
var SKIN_IS 0
var POISON 0
var DISEASE 0

pause
EmpathWounds:
send perceive health self
action setvariable TEMP $1_$2 when ^Wounds to the (LEFT|RIGHT) (\w+):$
action setvariable TEMP $1 when ^Wounds to the (\w+):$
action setvariable %TEMP_MYEW 1 when Fresh External:.*?\-\-\s+insignificant$
action setvariable %TEMP_MYIW 1 when Fresh Internal:.*?\-\-\s+insignificant$
action setvariable %TEMP_MYES 1 when Scars External:.*?\-\-\s+insignificant$
action setvariable %TEMP_MYIS 1 when Scars Internal:.*?\-\-\s+insignificant$
action setvariable %TEMP_MYEW 2 when Fresh External:.*?\-\-\s+negligible$
action setvariable %TEMP_MYIW 2 when Fresh Internal:.*?\-\-\s+negligible$
action setvariable %TEMP_MYES 2 when Scars External:.*?\-\-\s+negligible$
action setvariable %TEMP_MYIS 2 when Scars Internal:.*?\-\-\s+negligible$
action setvariable %TEMP_MYEW 3 when Fresh External:.*?\-\-\s+minor$
action setvariable %TEMP_MYIW 3 when Fresh Internal:.*?\-\-\s+minor$
action setvariable %TEMP_MYES 3 when Scars External:.*?\-\-\s+minor$
action setvariable %TEMP_MYIS 3 when Scars Internal:.*?\-\-\s+minor$
action setvariable %TEMP_MYEW 4 when Fresh External:.*?\-\-\s+more than minor$
action setvariable %TEMP_MYIW 4 when Fresh Internal:.*?\-\-\s+more than minor$
action setvariable %TEMP_MYES 4 when Scars External:.*?\-\-\s+more than minor$
action setvariable %TEMP_MYIS 4 when Scars Internal:.*?\-\-\s+more than minor$
action setvariable %TEMP_MYEW 5 when Fresh External:.*?\-\-\s+harmful$
action setvariable %TEMP_MYIW 5 when Fresh Internal:.*?\-\-\s+harmful$
action setvariable %TEMP_MYES 5 when Scars External:.*?\-\-\s+harmful$
action setvariable %TEMP_MYIS 5 when Scars Internal:.*?\-\-\s+harmful$
action setvariable %TEMP_MYEW 6 when Fresh External:.*?\-\-\s+very harmful$
action setvariable %TEMP_MYIW 6 when Fresh Internal:.*?\-\-\s+very harmful$
action setvariable %TEMP_MYES 6 when Scars External:.*?\-\-\s+very harmful$
action setvariable %TEMP_MYIS 6 when Scars Internal:.*?\-\-\s+very harmful$
action setvariable %TEMP_MYEW 7 when Fresh External:.*?\-\-\s+damaging$
action setvariable %TEMP_MYIW 7 when Fresh Internal:.*?\-\-\s+damaging$
action setvariable %TEMP_MYES 7 when Scars External:.*?\-\-\s+damaging$
action setvariable %TEMP_MYIS 7 when Scars Internal:.*?\-\-\s+damaging$
action setvariable %TEMP_MYEW 8 when Fresh External:.*?\-\-\s+very damaging$
action setvariable %TEMP_MYIW 8 when Fresh Internal:.*?\-\-\s+very damaging$
action setvariable %TEMP_MYES 8 when Scars External:.*?\-\-\s+very damaging$
action setvariable %TEMP_MYIS 8 when Scars Internal:.*?\-\-\s+very damaging$
action setvariable %TEMP_MYEW 9 when Fresh External:.*?\-\-\s+severe$
action setvariable %TEMP_MYIW 9 when Fresh Internal:.*?\-\-\s+severe$
action setvariable %TEMP_MYES 9 when Scars External:.*?\-\-\s+severe$
action setvariable %TEMP_MYIS 9 when Scars Internal:.*?\-\-\s+severe$
action setvariable %TEMP_MYEW 10 when Fresh External:.*?\-\-\s+very severe$
action setvariable %TEMP_MYIW 10 when Fresh Internal:.*?\-\-\s+very severe$
action setvariable %TEMP_MYES 10 when Scars External:.*?\-\-\s+very severe$
action setvariable %TEMP_MYIS 10 when Scars Internal:.*?\-\-\s+very severe$
action setvariable %TEMP_MYEW 11 when Fresh External:.*?\-\-\s+devastating$
action setvariable %TEMP_MYIW 11 when Fresh Internal:.*?\-\-\s+devastating$
action setvariable %TEMP_MYES 11 when Scars External:.*?\-\-\s+devastating$
action setvariable %TEMP_MYIS 11 when Scars Internal:.*?\-\-\s+devastating$
action setvariable %TEMP_MYEW 12 when Fresh External:.*?\-\-\s+very devastating$
action setvariable %TEMP_MYIW 12 when Fresh Internal:.*?\-\-\s+very devastating$
action setvariable %TEMP_MYES 12 when Scars External:.*?\-\-\s+very devastating$
action setvariable %TEMP_MYIS 12 when Scars Internal:.*?\-\-\s+very devastating$
action setvariable %TEMP_MYEW 13 when Fresh External:.*?\-\-\s+useless$
action setvariable %TEMP_MYIW 13 when Fresh Internal:.*?\-\-\s+useless$
action setvariable %TEMP_MYES 13 when Scars External:.*?\-\-\s+useless$
action setvariable %TEMP_MYIS 13 when Scars Internal:.*?\-\-\s+useless$
waitforre ^You .+ vitality
wait
pause

PatientWounds:
send touch %1
action setvariable TEMP $1_$2 when ^Wounds to the (LEFT|RIGHT) (\w+):$
action setvariable TEMP $1 when ^Wounds to the (\w+):$
action setvariable %TEMP_EW 1 when Fresh External:.*?\-\-\s+insignificant$
action setvariable %TEMP_IW 1 when Fresh Internal:.*?\-\-\s+insignificant$
action setvariable %TEMP_ES 1 when Scars External:.*?\-\-\s+insignificant$
action setvariable %TEMP_IS 1 when Scars Internal:.*?\-\-\s+insignificant$
action setvariable %TEMP_EW 2 when Fresh External:.*?\-\-\s+negligible$
action setvariable %TEMP_IW 2 when Fresh Internal:.*?\-\-\s+negligible$
action setvariable %TEMP_ES 2 when Scars External:.*?\-\-\s+negligible$
action setvariable %TEMP_IS 2 when Scars Internal:.*?\-\-\s+negligible$
action setvariable %TEMP_EW 3 when Fresh External:.*?\-\-\s+minor$
action setvariable %TEMP_IW 3 when Fresh Internal:.*?\-\-\s+minor$
action setvariable %TEMP_ES 3 when Scars External:.*?\-\-\s+minor$
action setvariable %TEMP_IS 3 when Scars Internal:.*?\-\-\s+minor$
action setvariable %TEMP_EW 4 when Fresh External:.*?\-\-\s+more than minor$
action setvariable %TEMP_IW 4 when Fresh Internal:.*?\-\-\s+more than minor$
action setvariable %TEMP_ES 4 when Scars External:.*?\-\-\s+more than minor$
action setvariable %TEMP_IS 4 when Scars Internal:.*?\-\-\s+more than minor$
action setvariable %TEMP_EW 5 when Fresh External:.*?\-\-\s+harmful$
action setvariable %TEMP_IW 5 when Fresh Internal:.*?\-\-\s+harmful$
action setvariable %TEMP_ES 5 when Scars External:.*?\-\-\s+harmful$
action setvariable %TEMP_IS 5 when Scars Internal:.*?\-\-\s+harmful$
action setvariable %TEMP_EW 6 when Fresh External:.*?\-\-\s+very harmful$
action setvariable %TEMP_IW 6 when Fresh Internal:.*?\-\-\s+very harmful$
action setvariable %TEMP_ES 6 when Scars External:.*?\-\-\s+very harmful$
action setvariable %TEMP_IS 6 when Scars Internal:.*?\-\-\s+very harmful$
action setvariable %TEMP_EW 7 when Fresh External:.*?\-\-\s+damaging$
action setvariable %TEMP_IW 7 when Fresh Internal:.*?\-\-\s+damaging$
action setvariable %TEMP_ES 7 when Scars External:.*?\-\-\s+damaging$
action setvariable %TEMP_IS 7 when Scars Internal:.*?\-\-\s+damaging$
action setvariable %TEMP_EW 8 when Fresh External:.*?\-\-\s+very damaging$
action setvariable %TEMP_IW 8 when Fresh Internal:.*?\-\-\s+very damaging$
action setvariable %TEMP_ES 8 when Scars External:.*?\-\-\s+very damaging$
action setvariable %TEMP_IS 8 when Scars Internal:.*?\-\-\s+very damaging$
action setvariable %TEMP_EW 9 when Fresh External:.*?\-\-\s+severe$
action setvariable %TEMP_IW 9 when Fresh Internal:.*?\-\-\s+severe$
action setvariable %TEMP_ES 9 when Scars External:.*?\-\-\s+severe$
action setvariable %TEMP_IS 9 when Scars Internal:.*?\-\-\s+severe$
action setvariable %TEMP_EW 10 when Fresh External:.*?\-\-\s+very severe$
action setvariable %TEMP_IW 10 when Fresh Internal:.*?\-\-\s+very severe$
action setvariable %TEMP_ES 10 when Scars External:.*?\-\-\s+very severe$
action setvariable %TEMP_IS 10 when Scars Internal:.*?\-\-\s+very severe$
action setvariable %TEMP_EW 11 when Fresh External:.*?\-\-\s+devastating$
action setvariable %TEMP_IW 11 when Fresh Internal:.*?\-\-\s+devastating$
action setvariable %TEMP_ES 11 when Scars External:.*?\-\-\s+devastating$
action setvariable %TEMP_IS 11 when Scars Internal:.*?\-\-\s+devastating$
action setvariable %TEMP_EW 12 when Fresh External:.*?\-\-\s+very devastating$
action setvariable %TEMP_IW 12 when Fresh Internal:.*?\-\-\s+very devastating$
action setvariable %TEMP_ES 12 when Scars External:.*?\-\-\s+very devastating$
action setvariable %TEMP_IS 12 when Scars Internal:.*?\-\-\s+very devastating$
action setvariable %TEMP_EW 13 when Fresh External:.*?\-\-\s+useless$
action setvariable %TEMP_IW 13 when Fresh Internal:.*?\-\-\s+useless$
action setvariable %TEMP_ES 13 when Scars External:.*?\-\-\s+useless$
action setvariable %TEMP_IS 13 when Scars Internal:.*?\-\-\s+useless$
action setvariable POISON 1 when ^(He|She).+poison
waitforre /^%1.+ vitality/i

CombinedWounds:
evalmath COMBHEAD_EW %HEAD_MYEW+%HEAD_EW
evalmath COMBHEAD_IW %HEAD_MYIW+%HEAD_IW
evalmath COMBHEAD_ES %HEAD_MYES+%HEAD_ES
evalmath COMBHEAD_IS %HEAD_MYIS+%HEAD_IS
evalmath COMBNECK_EW %NECK_MYEW+%NECK_EW
evalmath COMBNECK_IW %NECK_MYIW+%NECK_IW
evalmath COMBNECK_ES %NECK_MYES+%NECK_ES
evalmath COMBNECK_IS %NECK_MYIS+%NECK_IS
evalmath COMBCHEST_EW %CHEST_MYEW+%CHEST_EW
evalmath COMBCHEST_IW %CHEST_MYIW+%CHEST_IW
evalmath COMBCHEST_ES %CHEST_MYES+%CHEST_ES
evalmath COMBCHEST_IS %CHEST_MYIS+%CHEST_IS
evalmath COMBABDOMEN_EW %ABDOMEN_MYEW+%ABDOMEN_EW
evalmath COMBABDOMEN_IW %ABDOMEN_MYIW+%ABDOMEN_IW
evalmath COMBABDOMEN_ES %ABDOMEN_MYES+%ABDOMEN_ES
evalmath COMBABDOMEN_IS %ABDOMEN_MYIS+%ABDOMEN_IS
evalmath COMBBACK_EW %BACK_MYEW+%BACK_EW
evalmath COMBBACK_IW %BACK_MYIW+%BACK_IW
evalmath COMBBACK_ES %BACK_MYES+%BACK_ES
evalmath COMBBACK_IS %BACK_MYIS+%BACK_IS
evalmath COMBTAIL_EW %TAIL_MYEW+%TAIL_EW
evalmath COMBTAIL_IW %TAIL_MYIW+%TAIL_IW
evalmath COMBTAIL_ES %TAIL_MYES+%TAIL_ES
evalmath COMBTAIL_IS %TAIL_MYIS+%TAIL_IS
evalmath CHKSCRHEAD_MYE %HEAD_MYEW+%HEAD_MYES
evalmath CHKSCRHEAD_MYI %HEAD_MYIW+%HEAD_MYIS
evalmath CHKSCRNECK_MYE %NECK_MYEW+%NECK_MYES
evalmath CHKSCRNECK_MYI %NECK_MYIW+%NECK_MYIS
evalmath CHKSCRCHEST_MYE %CHEST_MYEW+%CHEST_MYES
evalmath CHKSCRCHEST_MYI %CHEST_MYIW+%CHEST_MYIS
evalmath CHKSCRABDOMEN_MYE %ABDOMEN_MYEW+%ABDOMEN_MYES
evalmath CHKSCRABDOMEN_MYI %ABDOMEN_MYIW+%ABDOMEN_MYIS
evalmath CHKSCRBACK_MYE %BACK_MYEW+%BACK_MYES
evalmath CHKSCRBACK_MYI %BACK_MYIW+%BACK_MYIS
evalmath CHKSCRTAIL_MYE %TAIL_MYEW+%TAIL_MYES
evalmath CHKSCRTAIL_MYI %TAIL_MYIW+%TAIL_MYIS
pause

math LOOP add 1
echo ***** Wound variables set! Starting round %LOOP. *****

if %RIGHT_EYE_EW > 0 && %RIGHT_EYE_MYEW < 13 then
{
gosub takequick right eye
}

if %RIGHT_EYE_IW > 0 && %RIGHT_EYE_MYIW < 13 then
{
gosub takequick internal right eye
}

if %RIGHT_EYE_ES > 0 && %RIGHT_EYE_MYES < 13 then
{
gosub takequick right eye scar
}

if %RIGHT_EYE_IS > 0 && %RIGHT_EYE_MYIS < 13 then
{
gosub takequick internal right eye scar
}

if %LEFT_EYE_EW > 0 && %LEFT_EYE_MYEW < 13 then
{
gosub takequick left eye
}

if %LEFT_EYE_IW > 0 && %LEFT_EYE_MYIW < 13 then
{
gosub takequick internal left eye
}

if %LEFT_EYE_ES > 0 && %LEFT_EYE_MYES < 13 then
{
gosub takequick left eye scar
}

if %LEFT_EYE_IS > 0 && %LEFT_EYE_MYIS < 13 then
{
gosub takequick internal left eye scar
}

if %RIGHT_ARM_EW > 0 && %RIGHT_ARM_MYEW < 13 then
{
gosub takequick right arm
}

if %RIGHT_ARM_IW > 0 && %RIGHT_ARM_MYIW < 13 then
{
gosub takequick internal right arm
}

if %RIGHT_ARM_ES > 0 && %RIGHT_ARM_MYES < 13 then
{
gosub takequick right arm scar
}

if %RIGHT_ARM_IS > 0 && %RIGHT_ARM_MYIS < 13 then
{
gosub takequick internal right arm scar
}

if %LEFT_ARM_EW > 0 && %LEFT_ARM_MYEW < 13 then
{
gosub takequick left arm
}

if %LEFT_ARM_IW > 0 && %LEFT_ARM_MYIW < 13 then
{
gosub takequick internal left arm
}

if %LEFT_ARM_ES > 0 && %LEFT_ARM_MYES < 13 then
{
gosub takequick left arm scar
}

if %LEFT_ARM_IS > 0 && %LEFT_ARM_MYIS < 13 then
{
gosub takequick internal left arm scar
}

if %RIGHT_HAND_EW > 0 && %RIGHT_HAND_MYEW < 13 then
{
gosub takequick right hand
}

if %RIGHT_HAND_IW > 0 && %RIGHT_HAND_MYIW < 13 then
{
gosub takequick internal right hand
}

if %RIGHT_HAND_ES > 0 && %RIGHT_HAND_MYES < 13 then
{
gosub takequick right hand scar
}

if %RIGHT_HAND_IS > 0 && %RIGHT_HAND_MYIS < 13 then
{
gosub takequick internal right hand scar
}

if %LEFT_HAND_EW > 0 && %LEFT_HAND_MYEW < 13 then
{
gosub takequick left hand
}

if %LEFT_HAND_IW > 0 && %LEFT_HAND_MYIW < 13 then
{
gosub takequick internal left hand
}

if %LEFT_HAND_ES > 0 && %LEFT_HAND_MYES < 13 then
{
gosub takequick left hand scar
}

if %LEFT_HAND_IS > 0 && %LEFT_HAND_MYIS < 13 then
{
gosub takequick internal left hand scar
}

if %RIGHT_LEG_EW > 0 && %RIGHT_LEG_MYEW < 13 then
{
gosub takequick right leg
}

if %RIGHT_LEG_IW > 0 && %RIGHT_LEG_MYIW < 13 then
{
gosub takequick internal right leg
}

if %RIGHT_LEG_ES > 0 && %RIGHT_LEG_MYES < 13 then
{
gosub takequick right leg scar
}

if %RIGHT_LEG_IS > 0 && %RIGHT_LEG_MYIS < 13 then
{
gosub takequick internal right leg scar
}

if %LEFT_LEG_EW > 0 && %LEFT_LEG_MYEW < 13 then
{
gosub takequick left leg
}

if %LEFT_LEG_IW > 0 && %LEFT_LEG_MYIW < 13 then
{
gosub takequick internal left leg
}

if %LEFT_LEG_ES > 0 && %LEFT_LEG_MYES < 13 then
{
gosub takequick left leg scar
}

if %LEFT_LEG_IS > 0 && %LEFT_LEG_MYIS < 13 then
{
gosub takequick internal left leg scar
}

if %SKIN_EW > 0 && %SKIN_MYEW < 13 then
{
gosub takequick skin
}

if %SKIN_IW > 0 && %SKIN_MYIW < 13 then
{
gosub takequick internal skin
}

if %SKIN_ES > 0 && %SKIN_MYES < 13 then
{
gosub takequick skin scar
}

if %SKIN_IS > 0 && %SKIN_MYIS < 13 then
{
gosub takequick internal skin scar
}

if %RIGHT_EYE_EW > 0 && %RIGHT_EYE_MYEW > 12 then
{
var location external
var part right eye
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick right eye
}

if %RIGHT_EYE_IW > 0 && %RIGHT_EYE_MYIW > 12 then
{
var location internal
var part right eye
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal right eye
}

if %RIGHT_EYE_ES > 0 && %RIGHT_EYE_MYES > 12 then
{
var location external
var part right eye
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick right eye scar
}

if %RIGHT_EYE_IS > 0 && %RIGHT_EYE_MYIS > 12 then
{
var location internal
var part right eye
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal right eye scar
}

if %LEFT_EYE_EW > 0 && %LEFT_EYE_MYEW > 12 then
{
var location external
var part left eye
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick left eye
}

if %LEFT_EYE_IW > 0 && %LEFT_EYE_MYIW > 12 then
{
var location internal
var part left eye
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal left eye
}

if %LEFT_EYE_ES > 0 && %LEFT_EYE_MYES > 12 then
{
var location external
var part left eye
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick left eye scar
}

if %LEFT_EYE_IS > 0 && %LEFT_EYE_MYIS > 12 then
{
var location internal
var part left eye
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal left eye scar
}

if %RIGHT_ARM_EW > 0 && %RIGHT_ARM_MYEW > 12 then
{
var location external
var part right arm
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick right arm
}

if %RIGHT_ARM_IW > 0 && %RIGHT_ARM_MYIW > 12 then
{
var location internal
var part right arm
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal right arm
}

if %RIGHT_ARM_ES > 0 && %RIGHT_ARM_MYES > 12 then
{
var location external
var part right arm
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick right arm scar
}

if %RIGHT_ARM_IS > 0 && %RIGHT_ARM_MYIS > 12 then
{
var location internal
var part right arm
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal right arm scar
}

if %LEFT_ARM_EW > 0 && %LEFT_ARM_MYEW > 12 then
{
var location external
var part left arm
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick left arm
}

if %LEFT_ARM_IW > 0 && %LEFT_ARM_MYIW > 12 then
{
var location internal
var part left arm
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal left arm
}

if %LEFT_ARM_ES > 0 && %LEFT_ARM_MYES > 12 then
{
var location external
var part left arm
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick left arm scar
}

if %LEFT_ARM_IS > 0 && %LEFT_ARM_MYIS > 12 then
{
var location internal
var part left arm
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal left arm scar
}

if %RIGHT_HAND_EW > 0 && %RIGHT_HAND_MYEW > 12 then
{
var location external
var part right hand
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick right hand
}

if %RIGHT_HAND_IW > 0 && %RIGHT_HAND_MYIW > 12 then
{
var location internal
var part right hand
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal right hand
}

if %RIGHT_HAND_ES > 0 && %RIGHT_HAND_MYES > 12 then
{
var location external
var part right hand
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick right hand scar
}

if %RIGHT_HAND_IS > 0 && %RIGHT_HAND_MYIS > 12 then
{
var location internal
var part right hand
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal right hand scar
}

if %LEFT_HAND_EW > 0 && %LEFT_HAND_MYEW > 12 then
{
var location external
var part left hand
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick left hand
}

if %LEFT_HAND_IW > 0 && %LEFT_HAND_MYIW > 12 then
{
var location internal
var part left hand
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal left hand
}

if %LEFT_HAND_ES > 0 && %LEFT_HAND_MYES > 12 then
{
var location external
var part left hand
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick left hand scar
}

if %LEFT_HAND_IS > 0 && %LEFT_HAND_MYIS > 12 then
{
var location internal
var part left hand
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal left hand scar
}

if %RIGHT_LEG_EW > 0 && %RIGHT_LEG_MYEW > 12 then
{
var location external
var part right leg
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick right leg
}

if %RIGHT_LEG_IW > 0 && %RIGHT_LEG_MYIW > 12 then
{
var location internal
var part right leg
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal right leg
}

if %RIGHT_LEG_ES > 0 && %RIGHT_LEG_MYES > 12 then
{
var location external
var part right leg
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick right leg scar
}

if %RIGHT_LEG_IS > 0 && %RIGHT_LEG_MYIS > 12 then
{
var location internal
var part right leg
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal right leg scar
}

if %LEFT_LEG_EW > 0 && %LEFT_LEG_MYEW > 12 then
{
var location external
var part left leg
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick left leg
}

if %LEFT_LEG_IW > 0 && %LEFT_LEG_MYIW > 12 then
{
var location internal
var part left leg
echo ***** You need to heal your %location %part wound before you can transfer more of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal left leg
}

if %LEFT_LEG_ES > 0 && %LEFT_LEG_MYES > 12 then
{
var location external
var part left leg
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick left leg scar
}

if %LEFT_LEG_IS > 0 && %LEFT_LEG_MYIS > 12 then
{
var location internal
var part left leg
echo ***** You need to heal your %location %part scar before you can transfer more of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal left leg scar
}

if %SKIN_EW > 0 && %SKIN_MYEW > 12 then
{
var location external
var part skin
echo ***** You need to heal your skin wound before you can transfer more of %1's skin wound. Now healing your skin wound. *****
gosub HW2
send touch %1
gosub takequick skin
}

if %SKIN_IW > 0 && %SKIN_MYIW > 12 then
{
var location internal
var part skin
echo ***** You need to heal your nerve wound before you can transfer more of %1's skin wound. Now healing your skin wound. *****
gosub HW
send touch %1
gosub takequick internal skin
}

if %SKIN_ES > 0 && %SKIN_MYES > 12 then
{
var location external
var part skin
echo ***** You need to heal your skin scar before you can transfer more of %1's skin scar. Now healing your skin scar. *****
gosub HS2
send touch %1
gosub takequick skin scar
}

if %SKIN_IS > 0 && %SKIN_MYIS > 12 then
{
var location internal
var part skin
echo ***** You need to heal your nerve scar before you can transfer more of %1's skin scar. Now healing your skin scar. *****
gosub HS
send touch %1
gosub takequick internal skin scar
}

if %COMBHEAD_EW> 0 && %COMBHEAD_EW< 12 && %HEAD_EW> 0 then
{
gosub takequick head
}

if %COMBHEAD_IW> 0 && %COMBHEAD_IW< 12 && %HEAD_IW> 0 then
{
gosub takequick internal head
}

if %COMBHEAD_ES> 0 && %COMBHEAD_ES< 12 && %HEAD_ES> 0 then
{
gosub takequick head scar
}

if %COMBHEAD_IS> 0 && %COMBHEAD_IS< 12 && %HEAD_IS> 0 then
{
gosub takequick internal head scar
}

if %COMBNECK_EW> 0 && %COMBNECK_EW< 12 && %NECK_EW> 0 then
{
gosub takequick neck
}

if %COMBNECK_IW> 0 && %COMBNECK_IW< 12 && %NECK_IW> 0 then
{
gosub takequick internal neck
}

if %COMBNECK_ES> 0 && %COMBNECK_ES< 12 && %NECK_ES> 0 then
{
gosub takequick neck scar
}

if %COMBNECK_IS> 0 && %COMBNECK_IS< 12 && %NECK_IS> 0 then
{
gosub takequick internal neck scar
}

if %COMBCHEST_EW> 0 && %COMBCHEST_EW< 12 && %CHEST_EW> 0 then
{
gosub takequick chest
}

if %COMBCHEST_IW> 0 && %COMBCHEST_IW< 12 && %CHEST_IW> 0 then
{
gosub takequick internal chest
}

if %COMBCHEST_ES> 0 && %COMBCHEST_ES< 12 && %CHEST_ES> 0 then
{
gosub takequick chest scar
}

if %COMBCHEST_IS> 0 && %COMBCHEST_IS< 12 && %CHEST_IS> 0 then
{
gosub takequick internal chest scar
}

if %COMBABDOMEN_EW> 0 && %COMBABDOMEN_EW< 12 && %ABDOMEN_EW> 0 then
{
gosub takequick abdomen
}

if %COMBABDOMEN_IW> 0 && %COMBABDOMEN_IW< 12 && %ABDOMEN_IW> 0 then
{
gosub takequick internal abdomen
}

if %COMBABDOMEN_ES> 0 && %COMBABDOMEN_ES< 12 && %ABDOMEN_ES> 0 then
{
gosub takequick abdomen scar
}

if %COMBABDOMEN_IS> 0 && %COMBABDOMEN_IS< 12 && %ABDOMEN_IS> 0 then
{
gosub takequick internal abdomen scar
}

if %COMBBACK_EW> 0 && %COMBBACK_EW< 12 && %BACK_EW> 0 then
{
gosub takequick back
}

if %COMBBACK_IW> 0 && %COMBBACK_IW< 12 && %BACK_IW> 0 then
{
gosub takequick internal back
}

if %COMBBACK_ES> 0 && %COMBBACK_ES< 12 && %BACK_ES> 0 then
{
gosub takequick back scar
}

if %COMBBACK_IS> 0 && %COMBBACK_IS< 12 && %BACK_IS> 0 then
{
gosub takequick internal back scar
}

if %COMBTAIL_EW> 0 && %COMBTAIL_EW< 12 && %TAIL_EW> 0 then
{
gosub takequick tail
}

if %COMBTAIL_IW> 0 && %COMBTAIL_IW< 12 && %TAIL_IW> 0 then
{
gosub takequick internal tail
}

if %COMBTAIL_ES> 0 && %COMBTAIL_ES< 12 && %TAIL_ES> 0 then
{
gosub takequick tail scar
}

if %COMBTAIL_IS> 0 && %COMBTAIL_IS< 12 && %TAIL_IS> 0 then
{
gosub takequick internal tail scar
}

if %COMBHEAD_EW> 11 && %HEAD_EW< 12 then
{
var location external
var part head
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick head
}

if %COMBHEAD_IW> 11 && %HEAD_IW< 12 then
{
var location internal
var part head
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal head
}

if %COMBHEAD_ES> 11 && %HEAD_ES< 12 then
{
var location external
var part head
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick head scar
}

if %COMBHEAD_IS> 11 && %HEAD_IS< 12 then
{
var location internal
var part head
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal head scar
}

if %COMBNECK_EW> 11 && %NECK_EW< 12 then
{
var location external
var part neck
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick neck
}

if %COMBNECK_IW> 11 && %NECK_IW< 12 then
{
var location internal
var part neck
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal neck
}

if %COMBNECK_ES> 11 && %NECK_ES< 12 then
{
var location external
var part neck
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick neck scar
}

if %COMBNECK_IS> 11 && %NECK_IS< 12 then
{
var location internal
var part neck
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal neck scar
}

if %COMBCHEST_EW> 11 && %CHEST_EW< 12 then
{
var location external
var part chest
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick chest
}

if %COMBCHEST_IW> 11 && %CHEST_IW< 12 then
{
var location internal
var part chest
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal chest
}

if %COMBCHEST_ES> 11 && %CHEST_ES< 12 then
{
var location external
var part chest
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick chest scar
}

if %COMBCHEST_IS> 11 && %CHEST_IS< 12 then
{
var location internal
var part chest
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal chest scar
}

if %COMBABDOMEN_EW> 11 && %ABDOMEN_EW< 12 then
{
var location external
var part abdomen
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick abdomen
}

if %COMBABDOMEN_IW> 11 && %ABDOMEN_IW< 12 then
{
var location internal
var part abdomen
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal abdomen
}

if %COMBABDOMEN_ES> 11 && %ABDOMEN_ES< 12 then
{
var location external
var part abdomen
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick abdomen scar
}

if %COMBABDOMEN_IS> 11 && %ABDOMEN_IS< 12 then
{
var location internal
var part abdomen
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal abdomen scar
}

if %COMBBACK_EW> 11 && %BACK_EW< 12 then
{
var location external
var part back
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick back
}

if %COMBBACK_IW> 11 && %BACK_IW< 12 then
{
var location internal
var part back
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal back
}

if %COMBBACK_ES> 11 && %BACK_ES< 12 then
{
var location external
var part back
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick back scar
}

if %COMBBACK_IS> 11 && %BACK_IS< 12 then
{
var location internal
var part back
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal back scar
}

if %COMBTAIL_EW> 11 && %TAIL_EW< 12 then
{
var location external
var part tail
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick tail
}

if %COMBTAIL_IW> 11 && %TAIL_IW< 12 then
{
var location internal
var part tail
echo ***** You need to heal your %location %part wound before you can safely transfer %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takequick internal tail
}

if %COMBTAIL_ES> 11 && %TAIL_ES< 12 then
{
var location external
var part tail
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick tail scar
}

if %COMBTAIL_IS> 11 && %TAIL_IS< 12 then
{
var location internal
var part tail
echo ***** You need to heal your %location %part scar before you can safely transfer %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takequick internal tail scar
}

if %HEAD_MYEW< 5 && %HEAD_EW> 11 then
{
gosub takehalf head
}

if %HEAD_MYIW< 5 && %HEAD_IW> 11 then
{
gosub takehalf internal head
}

if %HEAD_MYES< 5 && %HEAD_ES> 11 then
{
gosub takehalf head scar
}

if %HEAD_MYIS< 5 && %HEAD_IS> 11 then
{
gosub takehalf internal head scar
}

if %NECK_MYEW< 5 && %NECK_EW> 11 then
{
gosub takehalf neck
}

if %NECK_MYIW< 5 && %NECK_IW> 11 then
{
gosub takehalf internal neck
}

if %NECK_MYES< 5 && %NECK_ES> 11 then
{
gosub takehalf neck scar
}

if %NECK_MYIS< 5 && %NECK_IS> 11 then
{
gosub takehalf internal neck scar
}

if %CHEST_MYEW< 5 && %CHEST_EW> 11 then
{
gosub takehalf chest
}

if %CHEST_MYIW< 5 && %CHEST_IW> 11 then
{
gosub takehalf internal chest
}

if %CHEST_MYES< 5 && %CHEST_ES> 11 then
{
gosub takehalf chest scar
}

if %CHEST_MYIS< 5 && %CHEST_IS> 11 then
{
gosub takehalf internal chest scar
}

if %ABDOMEN_MYEW< 5 && %ABDOMEN_EW> 11 then
{
gosub takehalf abdomen
}

if %ABDOMEN_MYIW< 5 && %ABDOMEN_IW> 11 then
{
gosub takehalf internal abdomen
}

if %ABDOMEN_MYES< 5 && %ABDOMEN_ES> 11 then
{
gosub takehalf abdomen scar
}

if %ABDOMEN_MYIS< 5 && %ABDOMEN_IS> 11 then
{
gosub takehalf internal abdomen scar
}

if %BACK_MYEW< 5 && %BACK_EW> 11 then
{
gosub takehalf back
}

if %BACK_MYIW< 5 && %BACK_IW> 11 then
{
gosub takehalf internal back
}

if %BACK_MYES< 5 && %BACK_ES> 11 then
{
gosub takehalf back scar
}

if %BACK_MYIS< 5 && %BACK_IS> 11 then
{
gosub takehalf internal back scar
}

if %TAIL_MYEW< 5 && %TAIL_EW> 11 then
{
gosub takehalf tail
}

if %TAIL_MYIW< 5 && %TAIL_IW> 11 then
{
gosub takehalf internal tail
}

if %TAIL_MYES< 5 && %TAIL_ES> 11 then
{
gosub takehalf tail scar
}

if %TAIL_MYIS< 5 && %TAIL_IS> 11 then
{
gosub takehalf internal tail scar
}

if %HEAD_MYEW> 4 && %HEAD_EW> 11 then
{
var location external
var part head
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf head
}

if %HEAD_MYIW> 4 && %HEAD_IW> 11 then
{
var location internal
var part head
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal head
}

if %HEAD_MYES> 4 && %HEAD_ES> 11 then
{
var location external
var part head
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf head scar
}

if %HEAD_MYIS> 4 && %HEAD_IS> 11 then
{
var location internal
var part head
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal head scar
}

if %NECK_MYEW> 4 && %NECK_EW> 11 then
{
var location external
var part neck
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf neck
}

if %NECK_MYIW> 4 && %NECK_IW> 11 then
{
var location internal
var part neck
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal neck
}

if %NECK_MYES> 4 && %NECK_ES> 11 then
{
var location external
var part neck
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf neck scar
}

if %NECK_MYIS> 4 && %NECK_IS> 11 then
{
var location internal
var part neck
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal neck scar
}

if %CHEST_MYEW> 4 && %CHEST_EW> 11 then
{
var location external
var part chest
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf chest
}

if %CHEST_MYIW> 4 && %CHEST_IW> 11 then
{
var location internal
var part chest
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal chest
}

if %CHEST_MYES> 4 && %CHEST_ES> 11 then
{
var location external
var part chest
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf chest scar
}

if %CHEST_MYIS> 4 && %CHEST_IS> 11 then
{
var location internal
var part chest
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal chest scar
}

if %ABDOMEN_MYEW> 4 && %ABDOMEN_EW> 11 then
{
var location external
var part abdomen
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf abdomen
}

if %ABDOMEN_MYIW> 4 && %ABDOMEN_IW> 11 then
{
var location internal
var part abdomen
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal abdomen
}

if %ABDOMEN_MYES> 4 && %ABDOMEN_ES> 11 then
{
var location external
var part abdomen
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf abdomen scar
}

if %ABDOMEN_MYIS> 4 && %ABDOMEN_IS> 11 then
{
var location internal
var part abdomen
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal abdomen scar
}

if %BACK_MYEW> 4 && %BACK_EW> 11 then
{
var location external
var part back
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf back
}

if %BACK_MYIW> 4 && %BACK_IW> 11 then
{
var location internal
var part back
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal back
}

if %BACK_MYES> 4 && %BACK_ES> 11 then
{
var location external
var part back
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf back scar
}

if %BACK_MYIS> 4 && %BACK_IS> 11 then
{
var location internal
var part back
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal back scar
}

if %TAIL_MYEW> 4 && %TAIL_EW> 11 then
{
var location external
var part tail
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf tail
}

if %TAIL_MYIW> 4 && %TAIL_IW> 11 then
{
var location internal
var part tail
echo ***** You need to heal your %location %part wound before you can safely transfer half of %1's %location %part wound. Now healing your %location %part wound. *****
gosub HW2
send touch %1
gosub takehalf internal tail
}

if %TAIL_MYES> 4 && %TAIL_ES> 11 then
{
var location external
var part tail
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf tail scar
}

if %TAIL_MYIS> 4 && %TAIL_IS> 11 then
{
var location internal
var part tail
echo ***** You need to heal your %location %part scar before you can safely transfer half of %1's %location %part scar. Now healing your %location %part scar. *****
gosub HS2
send touch %1
gosub takehalf internal tail scar
}

goto loop

takequick:
send take %1 $0 quick
waitforre ^You touch %1
return

takehalf:
send take %1 $0 half quick
waitforre ^You touch %1
return

HW:
if $mana < 80 then waiteval $mana >= 80
send stop play
waitforre ^You stop|^In the name
send prep HW
pause 2
send charge my $cambrinth 7
wait
pause
send charge my $cambrinth 7
wait
pause
send invoke my $cambrinth
wait
pause
send cast %part reverse
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
matchwait 1
goto HW

HW2:
if $mana < 80 then waiteval $mana >= 80
send stop play
waitforre ^You stop|^In the name
send prep HW
pause 2
send harness 7
wait
pause
send harness 7
wait
pause
send cast %part reverse
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
matchwait 1
goto HW2

HS:
if $mana < 80 then waiteval $mana >= 80
send stop play
waitforre ^You stop|^In the name
send prep HS
pause 2
send charge my $cambrinth 7
wait
pause
send charge my $cambrinth 7
wait
pause
send invoke my $cambrinth
wait
pause
send cast %part reverse
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
matchwait 1
goto HS

HS2:
if $mana < 80 then waiteval $mana >= 80
send stop play
waitforre ^You stop|^In the name
send prep HS
pause 2
send harness 7
wait
pause
send harness 7
wait
pause
send cast %part reverse
matchre return %location.+appears? completely healed\.$
match return but it cannot heal what is not injured
matchwait 1
goto HS2

return:
return

loop:
echo ***** End of round %LOOP. Now pausing for 10 seconds to allow %1's wounds to be completely transferred to you. *****
pause 10
if $bleeding = 1 then
{
gosub tendstart
}
send touch %1
waitforre /^%1.+ vitality/i
goto start

refresh:
send stop play
waitforre ^You stop|^In the name
send prep Refresh
pause 2
send charge my $cambrinth 7
wait
pause
send charge my $cambrinth 7
wait
pause
send invoke my $cambrinth
wait
pause
send cast
waitforre ^You gesture
return

VH:
send stop play
waitforre ^You stop|^In the name
evalmath HARNESS round((100-$health) / 5)
send prep VH
pause 2
send charge my $cambrinth %HARNESS
wait
pause
send charge my $cambrinth %HARNESS
wait
pause
send invoke my $cambrinth
wait
pause
send cast
waitforre ^You gesture
return

tendstart:
ACTION setvar head 1 WHEN ^\s+head       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar neck 1 WHEN ^\s+neck       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar chest 1 WHEN ^\s+chest       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar abdomen 1 WHEN ^\s+abdomen       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar back 1 WHEN ^\s+back       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar tail 1 WHEN ^\s+tail       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar rightarm 1 WHEN ^\s+right arm       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar leftarm 1 WHEN ^\s+left arm       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar righthand 1 WHEN ^\s+right hand       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar lefthand 1 WHEN ^\s+left hand       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar rightleg 1 WHEN ^\s+right leg       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar leftleg 1 WHEN ^\s+left leg       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar righteye 1 WHEN ^\s+right eye       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
ACTION setvar lefteye 1 WHEN ^\s+left eye       (clotted|slight|light|moderate|bad|very bad|heavy|very heavy|severe|very severe|profuse|very profuse|gushing|massive stream|uncontrollable|unbelievable|beyond measure|death awaits)$
put health
waitforre ^Bleeding$
if %head = 1 then gosub tend head
if %neck = 1 then gosub tend neck
if %chest = 1 then gosub tend chest
if %abdomen = 1 then gosub tend abdomen
if %back = 1 then gosub tend back
if %tail = 1 then gosub tend tail
if %rightarm = 1 then gosub tend right arm
if %leftarm = 1 then gosub tend left arm
if %righthand = 1 then gosub tend right hand
if %lefthand = 1 then gosub tend left hand
if %rightleg = 1 then gosub tend right leg
if %leftleg = 1 then gosub tend left leg
if %righteye = 1 then gosub tend right eye
if %lefteye = 1 then gosub tend left eye
return

tend:
send tend my $0
waitforre ^You work|^That area|^Look again|^Your .+ too injured
return

done:
put '}%1 You are fully healed.