Kill List Issues

Posted by Warbit on Tue 30 Aug 2011 07:52 AM — 3 posts, 15,687 views.

USA #0
I am trying to create a kill list.

Basically a list of mobs, I want to find and kill after I kill a mob.

What I wanted triggers to do was
1. after i receive exp send tells to all the mobs, i want to kill.
2. if i got a response back meaning
(Ex: You tell a dog 'I am coming for you !!!')
it means the dog has repopped and is a good target to find.
3. So after receiving a response i wanted to track that mob.
4. I ordered my kill list from lowest priority to highest.
because i wanted to kill the targets that gave me the greatest reward, first and move onto a target of lesser value if the ones higher where not available.

I get this error when triggers fire.
Error number: 0
Event:        Compile error
Description:  [string "Trigger: "]:1: 'then' expected near 'snow'
Called by:    Immediate execution

this is my sent tells to all choice mobs trigger and fires after i kill a mob.

<triggers>
  <trigger
   enabled="y"
   match="Total exp for kill is*"
   sequence="100"
  >
  <send>drop corpse
get all corpse
sac corpse

look
tell rodent I am coming for you !!!
tell cobalt-tiger I am coming for you !!!
tell goblin-girl I am coming for you !!!

tell electric-eel I am coming for you !!!

tell thoughful-elf I am coming for you !!!
tell young-punk I am coming for you !!!


tell servant-blaster I am coming for you !!!
tell oaf I am coming for you !!!
tell young-cleric I am coming for you !!!
tell hunting-tiger I am coming for you !!!



</send>
  </trigger>
</triggers>

This trigger should fire when I get the response. You tell <mud name for mob> You are coming for you !!!

<triggers>
  <trigger
   enabled="y"
   expand_variables="y"
   match="You tell * 'I am coming for you !!!'"
   send_to="12"
   sequence="100"
  >
  <send>if %1 =="a rodent" then
SetVariable("trackie","rodent")
elseif %1 =="a cobalt tiger" then
SetVariable("trackie","cobalt-tiger")
elseif %1 =="a goblin girl" then
SetVariable("trackie","goblin-girl")
elseif %1 =="an electric eel" then
SetVariable("trackie","electric-eel")
elseif %1 =="a thoughtful elf" then
SetVariable("trackie","thoughtful-elf")
elseif %1 =="a young gang member" then
SetVariable("trackie","young-punk")
elseif %1 =="a servant of Blaster" then
SetVariable("trackie","servant-blaster")
elseif %1 =="a big oaf" then
SetVariable("trackie","oaf")
elseif %1 =="a young cleric" then
SetVariable("trackie","young-cleric")
elseif %1 =="a hunting tiger" then
SetVariable("trackie","hunting-tiger")
end--if


Send("track @trackie")</send>
  </trigger>
</triggers>

I then track with <a name the mud's tracking function can use. It should begin tracking the mob lowest on the list.
Cant you tell me why i am getting the error and how to fix it. If only one of the two, i would rather just know how to fix it.

Amended on Tue 30 Aug 2011 08:30 AM by Warbit
Australia Forum Administrator #1
Template:faq=32
Please read the MUSHclient FAQ - point 32.
USA #2
Thanks Nick !!!
adding "" around the %1 fixed it.

Here is the working code.


<triggers>
  <trigger
   enabled="y"
   expand_variables="y"
   match="You tell * 'I am coming for you !!!'"
   send_to="12"
   sequence="100"
  >
  <send>if "%1" =="a rodent" then
SetVariable("trackie","rodent")
elseif "%1" =="a cobalt tiger" then
SetVariable("trackie","cobalt-tiger")
elseif "%1" =="a goblin girl" then
SetVariable("trackie","goblin-girl")
elseif "%1" =="an electric eel" then
SetVariable("trackie","electric-eel")
elseif "%1" =="a thoughtful elf" then
SetVariable("trackie","thoughtful-elf")
elseif "%1" =="a young gang member" then
SetVariable("trackie","young-punk")
elseif "%1" =="a servant of Blaster" then
SetVariable("trackie","servant-blaster")
elseif "%1" =="a big oaf" then
SetVariable("trackie","oaf")
elseif "%1" =="a young cleric" then
SetVariable("trackie","young-cleric")
elseif "%1" =="a hunting tiger" then
SetVariable("trackie","hunting-tiger")
end--if


Send("track @trackie")</send>
  </trigger>
</triggers>