Talk 1.0 convert to New API - Pls Help
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

Talk 1.0 convert to New API - Pls Help

Started by ThugLife, 20 February, 2008, 09:46:00

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

ThugLife

Code: lua

--[[
   Talk 1.0 LUA 5.0/5.1
   
   By Mutor        03/25/06
   
   Requested by swapy2006
   
   Speak as another user
   
   -Sends message in main from specified or random user
   -Option to choose nick from user list for talk message
   -Includes context menu (right click)

]]

TalkCmds = {
   talk = function(user,data)
      if user then
         local s,e,msg = string.find(data,"^%b<>%s%p%w+%s(.+)|$")
         if msg then
            local s,e,nick = string.find(msg,"^(%S+)")
            if not nick then
               nick = GetNick()
               while (nick == user.sName) do
                  nick = GetNick()
               end
            else
               SendToAll(nick, string.sub(msg,string.len(nick)+2,-1))
            end
         else
            user:SendData("Error!, Usage: +talk <nick> <msg> (nick is optional)")
         end
      else
         return "Talk As Another User"," %[line:Nick (Leave blank for random)]"," %[line:Talk Message]"
      end
   end,
   }

NewUserConnected = function(user)
   SendCmds(user)
end
OpConnected = NewUserConnected
   
ChatArrival = function(user,data)
   local s,e,cmd = string.find(data,"%b<>%s%p(%w+)")
   if cmd then
      if cmd and TalkCmds[cmd] then
         return TalkCmds[cmd](user,data),1
      end
   end
end

GetNick = function()
   local tab = frmHub:GetOnlineUsers()
   local usr = tab[math.random(1, table.getn(tab))]
   local nick = usr.sName
   return nick
end


SendCmds = function(user)
   for i,v in pairs(TalkCmds) do
      local desc,arg1,arg2 = TalkCmds()
      user:SendData("$UserCommand 1 1 "..desc.."$<%[mynick]> +"..i..arg1..arg2.."&#124;")
      user:SendData("$UserCommand 1 2 "..desc.."$<%[mynick]> +"..i.." %[nick]"..arg2.."&#124;")
   end
end

Code: lua
Skype: galin93

SMF spam blocked by CleanTalk