=========================================;
; Script Name: traped box healing trainer;
; Author: Cerveza, Outlaw,               ;
; Version: 1.0a                          ;
; Shard OSI/FS: OSI/FS                    ;
; Revision Date: 08/26/2010               ;
; Purpose: Train Healing Quickly          ;
;=========================================;
;    ____         _      _  __   _ ___    ;
;   / __/ ___ _ _(_)_ _ | |_\ \ / / _ \   ;
;   \__ \/  _| `_| | ` \|  _/ / \ \/ \ \  ;
;   __/  \ (_| | | | |) | | \ \_/ /\_/ /  ;
;   \____/\__|_| |_|  _/\__\ \___/\___/   ;
;                  |_|                    ;
;=========================================;
; Setup: SET %HITS to whatever value you  ;
; want to use the trapped crate. Normally ;
; lower level Tinker trapped crates do    ;
; around 30 hps to a 0 resist char        ;
;                                         ;
; Start script on the char who will be    ;
; training healing.                       ;
;                                         ;
; Ensure you have bandages VISIBLE in a   ;
; container (bank, secure) that the       ;
; training char can drag/drop from.       ;
;=========================================;
; To Show Thanks and recognizing Cerveza for teaching his;
;dumb old bloke a new trick;                                
; Cerveza for trying to teach me how to script; 
;Cerv Helped me with this it is my first script;
; i wrote for tutitorial with Cerv help;
;=========================================;
; v1.0 - First SUO full release           ;
; v1.0a - Added delay in setup target     ;
;=========================================;
set %hits 50
Gosub GetChar TrainingChar
set %primary #Result
Gosub GetChar HealingTarget
set %secondary #Result
set %bandage ZLF
gosub SwapTo %secondary
display Target your Trapped Crate
  set #targCurs 1
    wait 5
  while #targCurs = 1
    wait 1
set %crateID #ltargetId
gosub SwapTo %primary
display ok Ready ; just gets the Trainer screen in play
repeat
gosub crate
gosub heal
until #false
sub crate
gosub SwapTo %secondary
if #hits > %hits
  {
    set #lobjectId %crateID
    event macro 17
    wait 10
  }
wait 10
gosub SwapTo %primary
return
sub heal
finditem %bandage C_ , #backpackID
if #findCnt = 0
  {
    finditem ZLF C_ ; , %storage
    if #findCnt = 0
      {
        msg Halt #time
        HALT
      }
    exevent drag #findID 500
    wait 10
    exevent dropC #backpackID
    wait 10
  }
set #lobjectId #findId
event macro 17
target 3s
set #ltargetId %secondary
event macro 22 0
wait 5s
return
; ****************************************
Sub GetChar
  display OK Target your %1 Character now
  set #targCurs 1
  while #targCurs = 1
    wait 1
  wait 10
Return #ltargetID
 
Back when I was learning the basics of scripting Cerv helped me put this little script together for tutorial purposes.  So the real credit of this script goes to Cerv in teaching me script edicate and flow and understanding what things mean in the script