<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE commands>
<commands>
<item>
  <string 
  match="^setflag (?P<target>\w+) (?P<flag>\w+)$"
  name="setflag"
  summary="Set a player's flag"
  needflag="can_setflag"
  needflag_failure="You can't do that."
  success_self="You set the flag '%<flag>' on %<target>."
  handler="DoSetFlag"
  />
  <flag
    notify_admin="1"
    log="1"
    />
</item>
<item>
  <string 
  match="^setflag"
  alias="setflag"
  usage="Usage: setflag (who) (flag)"
  />
</item>
<item>
  <string 
  match="^clearflag (?P<target>\w+) (?P<flag>\w+)$"
  name="clearflag"
  summary="Clear a player's flag"
  needflag="can_setflag"
  needflag_failure="You can't do that."
  success_self="You clear the flag '%<flag>' on %<target>."
  handler="DoClearFlag"
  />
<flag
    notify_admin="1"
    log="1"
    />  
</item>
<item>
  <string 
  match="^clearflag"
  alias="clearflag"
  usage="Usage: clearflag (who) (flag)"
  />
</item>
<item>
  <string 
  match="^clone (?P<what>.+)$"
  name="clone"
  summary="Clone an object"
  handler="DoClone"
  needflag="can_clone"
  needflag_failure="That takes great power, more than you have. :)"
  success_self="You clone %<what>."
  />
</item>
<item>
  <string 
  match="^clone"
  alias="clone"
  usage="Clone what?"
  />
</item>

<item>
  <string 
  match="^update spell (?P<spell>.+?) add effect$"
  name="addspelleffect"
  handler="DoAddSpellEffect"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^update spell (?P<spell>.+?) modify effect (?P<number>\d+) (?P<type>[snfb]) (?P<field>.+?) (?P<drop>(= (?P<value>.+))|drop)$"
  name="update spell"
  summary="Update spell or spell effects"
  handler="DoModifySpellEffect"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^update spell (?P<spell>.+?) remove effect (?P<number>\d+)$"
  name="removespelleffect"
  handler="DoRemoveSpellEffect"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^update spell (?P<spell>.+?) (?P<type>[snfb]) (?P<field>.+?) (?P<drop>(= (?P<value>.+))|drop)$"
  name="modifyspell"
  handler="DoModifySpell"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^update spell"
  alias="addspelleffect"
  usage="Usage: update spell (spell) 
         add effect 
         remove effect n 
         modify effect n {s|n|f|b} (field) (= value | drop)
         {s|n|f|b} (field) (= value | drop)
 
  The letters s/n/f/b indicate the data type (string, number, float, bool)
  
  eg.
  update spell fireball b active = 1           <-- modify spell base data
  update spell fireball add effect             <-- add a new effect
  update spell heal modify effect 3 n by = 10  <-- modify number for effect 3
  update spell fireball remove effect 4        <-- delete effect 4
      
  update spell fireball b active drop           <-- drop flag &quot;active&quot;
  update spell heal modify effect 3 n by drop   <-- drop data for &quot;by&quot;      
  "
  />
</item>

<item>
  <string 
  match="^create spell (?P<new_spell>.+)$"
  name="create spell"
  summary="Create a new spell"
  handler="DoAddSpell"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  success_self="You create the spell '%<new_spell>'."
  />
</item>


<item>
  <string 
  match="^create spell"
  alias="create spell"
  usage="Usage: create spell (name)"
  />
</item>

<item>
  <string 
  match="^delete spell (?P<spell>.+)$"
  name="delete spell"
  summary="Delete an existing spell"
  handler="DoDeleteSpell"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  success_self="You delete the spell '%<spell>'."
  />
</item>

<item>
  <string 
  match="^delete spell"
  alias="delete spell"
  usage="Usage: delete spell (name)"
  />
</item>

<item>
  <string 
  match="^show spells$"
  name="show spells"
  summary="List all spells"
  handler="DoShowSpells"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^show spell (?P<spell>.+)$"
  name="show spell"
  summary="Show details about one spell"
  handler="DoSpellInfo"
  needflag="can_add_spell"
  needflag_failure="Nice attempt."
  />
</item>

<item>
  <string 
  match="^show events$"
  name="show events"
  summary="Show events queue"
  handler="DoShowEvents"
  needflag="can_show_events"
  needflag_failure="Nice attempt."
  />
</item>


<item>
  <string 
  match="^show spell"
  alias="show spells"
  usage="Usage: show spell (name) | show spells"
  />
</item>

<item>
  <string 
  match="^info (?P<target>\w+)?$"
  name="info"
  summary="Information about some player or mob"
  handler="DoInfo"
  needflag="can_info"
 />
</item>
<item>
  <string 
  match="^info"
  alias="info"
  usage="Usage: info (who)"
  />
</item>
<item>
  <string 
  match="^cinfo$"
  handler="DoCinfo"
  name ="cinfo"
  summary="Information about control data"
  needflag="can_info"
 />
</item>
<item>
  <string 
  match="^write control file$"
  name="write control file"
  summary="Writes the control data to disk"
  handler="DoWriteControl"
  needflag="can_write_control"
 />
</item>
</commands>
