IfThrown				// Make it attack
  tmpargument = 2
  tmpdistance = 1
  SpawnAttachedParticle
  
IfHitGround				// Make a sound
  tmpargument = 1
  PlaySound
  DisaffirmCharacter			  // Stop thrown attack

// This function makes an item fall to the floor when spawned
IfSpawned
  tmpargument = ACTIONJB
  DoAction
  KeepAction
  MakeCrushValid
  MakeAmmoKnown

  //Allow module makers to specify stacks of knives here
  tmpx = selfcontent
  tmpy = 0
  IfXIsMoreThanY
    GetContent
    SetTargetToSelf
    SetTargetAmmo
    tmpargument = 0
    SetContent

IfCrushed
  tmpx = selfx
  tmpy = selfy
  tmpdistance = selfz
  tmpargument = 1
  SpawnExactParticle
  SpawnExactParticle
  SpawnExactParticle
  SpawnExactParticle
  GoPoof
  tmpargument = 1
  SendMessageNear
IfDropped				// Make it lie on floor
  KeepAction				  //
  tmpargument = 3			  //
  PlaySound				  //
IfGrabbed				// Tell them what they've won...
  SetTargetToWhoeverIsHolding		  //
  IfTargetIsAPlayer			  //
    tmpargument = 0			  //
    SendMessageNear
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
