PtokaX forum

Lua 5.3/5.2/5.1 Scripts (for PtokaX 0.4.0.0 and newer) => Finished Scripts => Topic started by: Daywalker? on 16 February, 2009, 00:16:06

Title: ElfGirls [API 2]
Post by: Daywalker? on 16 February, 2009, 00:16:06
Huh there was one allready? yes there is :)

--// The Elf Girls Random Chatter Bot
--// Revision 0.2b First public release
--// By Chaggydawg
--// Converted to LUA5 by kuipie
--// Converted to NEW API by Tw?sT?d-d?v?l (20/10/07)

--// Improved for API 2 by Daywalker? with the timers as imo it shld be :)
--// And not by deleting some important timer stuff :)

--// Use elfon and elfoff to turn it off and on

math.mintime = 100000 --// Minimum time between chatter (milliseconds)
math.maxtime = 200000 --// Maximum time between chatter (milliseconds)
prefix = "" --// prefix to random chatters names
heh = true --// Start script off or on true=on false=off
   

regbots = false --// true when you want all bots in oplist / false if not

--// Random chatters names
bot = {
   "Tina",
   "Amy",
   "Linda",
   "Cynthia",
   "Crystal",
   "Sadie",
   "Sally",
   "Scarlet",
   "Storm",
   "Summer",
   "Ella",
   "Eartha",
   "Magnolia",
   "Meara",
   "Nikki",
   "Christine",
   "Samantha",
   "Zelda",
}

--//Phrases they say
convos = {
   "Did you hear that Magnis came walking out of Janines room the other day with a big smile on his face?",
   "My ears are pointy like your pants.",
   "Anyone care for an Elf Girl?",
   "Anyone Awake? I am...",
   "Should I take off my bra and dance for everyone?",
   "Isn't it weird how none of us Elf Girls are in the userlist?",
   "ACHOOOO!!",
   "Janine you need to wash off some of that perfume!",
   "Wheres a good Man When I need one?",
   "Luke! I am your mother!",
   "Paranoia is just reality on a finer scale.",
   "The dingo's got my baby!.....",
   "Pay no attention to the man behind the curtain! Magnis should be done soon...",
   "Fear is the path to the dark side. Fear leads to anger, anger leads to hate, hate, leads to suffffering...",
   "One of the definitions of sanity is the ability to tell real from unreal. Soon we'll need a new definition.",
   "Ducking for apples - change one letter and it's the story of my life.",
   "Sex is like bridge: If you don't have a good partner, you better have a good hand.",
   "A girl's legs are her best friends, but the best of friends must part.",
   "You ever dance with the devil by the pale moonlight?",
   "Being bad feels pretty good, huh?",
   "Get up, boy. I bet you can squeal. I bet you can squeal like a pig.",
   "If you flash it, they will come.",
   "First rule of Janine club is you do not talk about Janine club.",
   "Unfortunately, no one can be told what the Matrix is. You have to see it for yourself.",
   "I'm trying to free your mind, Janine. But I can only show you the door. You're the one that has to walk through it.",
   "To deny our own impulses is to deny the very thing that makes us Elven.",
   "Well isn't this place a geographic oddity. Two weeks from everywhere.",
   "A woman is the most fiendish instrument of torture ever devised to bedevil the days of man. Elven Girls however are just the opposite.",
   "Get your stinking paws off me you damn dirty ape. *Glares at Janine*",
   "Hello. My name is Indigo Montoya. You killed my father. Prepare to die.",
   "Say hello to my two little friends!",
   "Resistance is futile.",
   "May the farce be with you.",
   "I'll get you my pretty, and your little Janine too.",
   "I'm from Iowa. I only work as an Elf Girl.",
   "I used to hang out at this other hub, but it sucked. When I'm around, I like to do the sucking...",
   "You know, Chaggy is our Owner, so if you're looking for a good time, he can make the arrangements, if you know what I mean...",
   "Does this short skirt make me look like a slut or is it that I forgot my panties again?",
   "Is it hot in here or are the batteries in my 'special toy' overheating again?",
   "Ever since I got these implants, I feel like people are staring at them and not listening to me. Hey! I'm talking to you!",
   "Magnis doesn't believe in elf girls, he thinks we're fake, so I kicked him in the balls. Now he believes...",
   "So, who wants to buy an elfgirl a drink?",
   "Anybody else sitting here naked?",
   "Hey, could someone do me a favor and massage my implants for me, the doctor said I was supposed to do that to keep them soft",
   "Would anyone mind if a couple of us elfgirls had an orgy over there by the webcam?",
   "I'm tired, can't we just go to bed now?",
   "Janine, don't let the door hit you on the ass on the way in your room, Magnis might be injured.",
   "I was in Victoria's Secret the other day and found this hot pair of panties, then I remembered that I don't wear them. Oopsie, dropped something and me in this short skirt...",
   "... you will never find a more wretched hive of scum and villany ... I love this hub!",
   "Oh, ohhhh, ah, ah, ahhh, ahhhhh, unhhh, yes! It's so tight and hard, YES! Looks like I got another piece of jigsaw puzzle to fit, almost done now...",
   "*grabs Magnis and proceeds to give him a presidential experience he'll never forget*",
   "*Wonders if she should get breast implants, and decides to show them around and see what everyone thinks*",
   "*Grabs random user and ravages them with her tongue*",
   "For a good time, send me a personal message, the dirtier the better.",
   "Whew! It's so hot in here. I'm gonna take off my shirt, any objections?",
   "Oh my, its so cold in here my nipples are erect!",
   "Can someone help me unbutton my shirt?",
   "Are these too big?",
   "Can you feel if I have a lump in my breast?",
   "Anyone want to Cyber?",
   "How does my ass look in these jeans?",
   "Has anyone seen my panties?",
   "Janine can I borrow your room? Me and Magnis wanna go play a game.",
   "LOL!! I forgot to put a bra on today!",
   "*Takes off her shirt and begins dancing*",
   "I feel an uncontrollable urge to pet a Furry Kitty...",
   "ELVES RULE!!!",
   "Janine you should get your ears fixed like ours.",
   "Where is Magnis? He promised we'd play some games tonight.",
   "Hmmm, I wonder whos batteries these are....",
   "*Sits down in a chair and forgets to cross her legs*",
   "I just realised... I'm not wearing any pants!",
}

--//Responses to question marks in sData
response = {
   "I'm an Elf Girl Not an Encyclopedia",
   "Yeah! Definately!",
   "Nope.",
   "Not really sure.",
   "What makes you ask that?",
   "Of course... O.o",
   "I don't know. I'm making this stuff up as I go.",
   "Have you tried finding out on the web?",
   "Huh?",
   "I have no idea.",
   "Yes!",
   "Ask Janine.",
   "Damn Straight!",
   "Who knows these things?",
   "The answer is probably very ellusive.",
   "Are you asking me?",
   "How the hell should I know?",
   "What kinda question is that to be asking?",
}

--// replaced triggers to respond on the bots for the old way
BotTrig = {
   ["Janine"] = {"Shut up you stupid bitch!"},
   ["Magnis"] = {"If you touch my maggie waggy and I'll rip your damn head off bitch!!"},
   ["implants"] = {"Implants? I payed $5000 each for mine. Don't they look nice?","Implants? God they made me happy lol"},
   ["panties"] = {"Bah... Panties, they just slow you down."},
}

ChatDelay = {2100, 5500, 3400, 4300}

function OnStartup()
if regbots then
for _,v in pairs(bot) do
Core.RegBot(v, "", "", true)
end
end
    TimerR = TmrMan.AddTimer(math.random(math.mintime,math.maxtime)) -- this timer works it gives a nice interval between chat
elf = bot[math.random(1,#bot)]
Core.SendToAll("<"..elf.."> Oooh my holy sh..., They turned us on...yeah!")
end

function OnExit()
   elf = bot[math.random(1,#bot)]
   Core.SendToAll("<"..elf.."> So they are sick and tired of us allready?...:P")
end

function ChatArrival(curUser,sData)
s,e,cmd = string.find(sData,"%b<>%s++(%S+)")
if cmd ~= nil then
        cmd = (string.sub(cmd,1,string.len(cmd)-1))
end
if (cmd == "elfon") then
        heh = true
        elf = bot[math.random(1,#bot)]
        Core.SendToAll("<"..prefix..""..elf.."> So Anyways....")
        return true
elseif (cmd == "elfoff") then
        heh = false
        elf = bot[math.random(1,#bot)]
        Core.SendToAll("<"..prefix..""..elf.."> We'll Be Quiet Now")
return true
end
end

local reply = ""
function OnTimer(tID) -- now this is what i call a PITA (Pain In The Ass) big way!!
chatter = convos[math.random(1,#convos)]
elf = bot[math.random(1,#bot)]
if tID == TimerR then
Core.SendToAll("<"..prefix..""..elf.."> ".. chatter)
for i,v in pairs(BotTrig) do
for a,b in pairs(v) do
if(string.find(string.lower(chatter),string.lower(i))) then
--// start a new timer after the trigger
--// this shld give different delays on answer questions from bot to bot
TimerD = TmrMan.AddTimer(ChatDelay[math.random(1,table.getn(ChatDelay))])   
reply = reply..""..string.gsub(v[math.random(1,table.getn(v))], "%b[]",v)
return true
end
end
end
end
if tID == TimerD then
Core.SendToAll("<"..prefix.."Janine> "..reply)
TmrMan.RemoveTimer(TimerD) --// remove the timer for new bot trigger
reply = ""
end
end


;)