//Do the enchantment bonus
IfHeld
  SetTargetToWhoeverIsHolding
  IfStateIs0
    SetOwnerToTarget
    EnchantTarget
    tmpargument = 1
    SetState
Else
  SetTargetToWhoeverIsHolding
  SetOwnerToTarget
  UndoEnchant
  tmpargument = 0
  SetState
IfDropped
  SetTargetToWhoeverIsHolding
  SetOwnerToTarget
  UndoEnchant
  tmpargument = 0
  SetState
IfPutAway
  SetTargetToWhoeverIsHolding
  SetOwnerToTarget
  UndoEnchant
  tmpargument = 0
  SetState
IfTakenOut
  SetTargetToWhoeverIsHolding
  SetOwnerToTarget
  UndoEnchant
  tmpargument = 0
  SetState

// ZZ> This function makes an item fall to the floor when spawned
IfSpawned				//
  tmpargument = ACTIONJB		  //
  DoAction				  //
  KeepAction				  //
  MakeCrushValid
IfCrushed
  tmpx = selfx
  tmpy = selfy
  tmpdistance = selfz
  tmpargument = 1
  SpawnExactParticle
  SpawnExactParticle
  SpawnExactParticle
  SpawnExactParticle
  GoPoof
  tmpargument = 1
  SendMessageNear
IfDropped				// Make it lie on floor
  KeepAction				  //
IfGrabbed				// Tell them what they've won...
  SetTargetToWhoeverIsHolding		  //
  IfTargetIsAPlayer			  //
    tmpargument = 0			  //
    SendMessageNear			  //
IfHitGround				// Make a sound
  tmpargument = 1			  //
  PlaySound				  //
IfNotDropped
  tmpargument = 2
  SendMessageNear
IfTakenOut
  tmpargument = 2
  PlaySound
  SetTargetToWhoeverIsHolding
  IfTargetIsAPlayer
    tmpargument = 4
    SendMessageNear
//IfNotPutAway
//  tmpargument = 3         //No longer needed, this is handled by the sourcecode now...
//  SendMessageNear
End					// All done
