PtokaX forum

Archive => Archived 4.0 boards => Help with Lua 4 scripts => Topic started by: Adicted on 21 June, 2005, 22:50:21

Title: How can I add a prefix to commands?
Post by: Adicted on 21 June, 2005, 22:50:21
UPS! SORRY! WRONG SECTION...PLEASE MOVE ME


hi there!
i'm pretty new to all this stuff and a little help would be great.

i downloaded this script (triggerbot.lua):

-- TrickerBot2.lua, created by Ptaczek Dec-24, 2002
-- Just see how to implement the NMDC TriggerBot in LUA :)   
-- changes
-- Feb-24, 2003, v2.0 Modification for DataArrival return value.
-- Tiny changes by VidFamne with lot of help by Piglja
-- VidFamne added Pigljas time-function, and some more trigs
-- A bug-fix by VidFamne, hopefully. And added some more triggs ;)
-- A new bug-fix ( for the "!me-command" ) by VidFamne, added ( 09.04.2003 ).
-- Added MatrixX On/Off function. Just type +quiet in mainchat to stop the Bot,
-- and +talk to start the Bot again. By VidFamne ( 05.05.2003 )
-- Bug-fix by [AF]Mike

botname = "-=xXx=-"

trigall=1

trigs = {
             
         [".lol"]={
     "Yeah, [CURUSER] that was funny,  Hahahaha.",
     "Hmm, ok that was funny, I think :)",
     "what! [CURUSER]  why are you laughing?",
     "You shake when you laugh, like a bowl full of jelly",
     "hilarious!",
     "hehehehe",
     "hohohohoh"  
                                 },

         hehe={
     "Yeah, [CURUSER] that was funny,  Hahahaha.",
     "Hmm, ok that was funny, I think :)",
     "what! [CURUSER]  why are you laughing?",
     "You shake when you laugh, like a bowl full of jelly",
     "hilarious!",
     "hehehehe",
     "hohohohoh"
                                 },
.
.
.
.
.
.some more commands here
.
.
.
.
.
function Main()
frmHub:RegBot(botname)
end

function DataArrival(curUser, data)

status=strsub(data,1,strlen(data)-1)
-- parse the command
s,e,cmd = strfind( status, "%b<>%s+(%S+)" )

if (cmd=="+quiet") then
trigall=0
SendToAll(botname, " Hmf, Okidoki I will be quiet :(( ")
return 1
elseif (cmd=="+talk") then
trigall=1
SendToAll(botname, " Okay, I will talk to you again :-)")
return 1
end

       
   if( strsub(data, 1, 1) == "<" ) then
      -- get the msg only using regular expression
      s,e,msg = strfind(data, "%b<>([%a ]+)")                                        
      -- look in the table
                if trigall==1 then
      for key, value in trigs do
                for key2, value2 in value do
                     
   if( strfind( strlower(msg), key) ) then
                 else break  
   end

        if( strfind( strlower(msg), "!me") ) then
                  t="**"..curUser.sName
                  data=gsub (msg, "!me", t, 1 )
   end

      SendToAll( data ) -- send the original data
                   
            SetTimer(1800)
                  StartTimer()
      answer, x = gsub(value[random(1,getn(value))], "%b[]", curUser.sName)

   return 1; -- tell the hub we have processed the data
   end
   end  
   end
end

function OnTimer()
   SendToAll( botname, answer ) -- send bot's answer
   StopTimer()
end
end


is it possibele to add a prefix to the command like ".lol" insted of "lol"?

thx for reading...greetz!!!