Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---------------------------------
- --Game Set-up
- ---------------------------------
- modeSet = 1
- --[[#0 = Normal || #1 = QnA Only || #2 = TnF Only]]--
- roundTime = false
- --[[#true = Longer Round Time || #false = Shorter Round Time]]--
- ---------------------------------
- --Questions/Statements
- ---------------------------------
- multipleChoice = {}
- --[[ multipleChoice[#] = {question = "?", answer1 = "A", answer2 = "B", answer3 = "C", correctAnswer = "D", score = 999} ]]--
- trueAndFalse = {}
- --[[ trueAndFalse[#] = {statement = ".", answer = "true 3/false 4", score = 999} ]]--
- ------List your multipleChoice questions here.
- multipleChoice[1] = {question = "When was Transformice released?", answer1 = "January 2011", answer2 = "December 2010", answer3 = "April 2011", correctAnswer = "May 2010", score = 10}
- multipleChoice[2] = {question = "What country did Transformice originate from?", answer1 = "London", answer2 = "Canada", answer3 = "China", correctAnswer = "France", score = 10}
- multipleChoice[3] = {question = "What is the most famous skill learnt in Transformice called?", answer1 = "Corner jumping", answer2 = "Turn around", answer3 = "Wall kicking", correctAnswer = "Wall jumping", score = 10}
- multipleChoice[4] = {question = "Which bot says, 'Kikoo pwet [username]!'?", answer1 = "Baffbot", answer2 = "Holzbot", answer3 = "Birdbot", correctAnswer = "Cfmbot", score = 10}
- multipleChoice[5] = {question = "Who created this module?", answer1 = "Owertail", answer2 = "Pixlelight", answer3 = "Zaxavien", correctAnswer = "Mousetat", score = 10}
- multipleChoice[6] = {question = "What color is water?", answer1 = "Blue", answer2 = "Green", answer3 = "White", correctAnswer = "Colourless", score = 10}
- multipleChoice[7] = {question = "Who created Transformice?", answer1 = "Melibellule", answer2 = "Zou", answer3 = "Transformice", correctAnswer = "Tigrounette", score = 10}
- multipleChoice[8] = {question = "Which of the following is NOT a Atelier 801 game?", answer1 = "Transformice", answer2 = "Bouboum", answer3 = "Fortoresse", correctAnswer = "Transforcats", score = 10}
- multipleChoice[9] = {question = "What command do u type to wave a flag?", answer1 = "/c", answer2 = "/facebook", answer3 = "/tc", correctAnswer = "/f", score = 10}
- multipleChoice[10] = {question = "Which of the following is an official module?", answer1 = "#PokeLua", answer2 = "#simonsays", answer3 = "#mousehunt", correctAnswer = "#dancedance", score = 10}
- multipleChoice[11] = {question = "Which of the following is NOT an official module?", answer1 = "#labyrinth", answer2 = "#palette", answer3 = "#keyhunt", correctAnswer = "#maze", score = 10}
- multipleChoice[12] = {question = "How many teasers are there in TransfromiceTV?", answer1 = "3", answer2 = "5", answer3 = "1", correctAnswer = "4", score = 10}
- multipleChoice[13] = {question = "What is the default color of mice in Tfm?", answer1 = "White", answer2 = "Black", answer3 = "Pink", correctAnswer = "Brown", score = 10}
- multipleChoice[14] = {question = "How do u do a moonwalk while facing the left?", answer1 = "up, dance, up", answer2 = "Up, down, right, cry, jump", answer3 = "Up, down, left, confetti, up", correctAnswer = "Up, down, right, kiss, jump", score = 10}
- multipleChoice[15] = {question = "What do you call an elephant swimming?", answer1 = "Elephant swimming!", answer2 = "Diving animal!", answer3 = "Grey sink!", correctAnswer = "Swimming trunk!", score = 10}
- multipleChoice[16] = {question = "Which object can you NOT transform into?", answer1 = "Large box", answer2 = "Large plank", answer3 = "Anvil", correctAnswer = "Ball", score = 10}
- multipleChoice[17] = {question = "334 + 448 = ?", answer1 = "772", answer2 = "114", answer3 = "562", correctAnswer = "782", score = 10}
- multipleChoice[18] = {question = "When was Fishing Event held in 2011?", answer1 = "May", answer2 = "July", answer3 = "September", correctAnswer = "April", score = 10}
- multipleChoice[19] = {question = "What was map 666?", answer1 = "Fishing Map", answer2 = "Christmas Map", answer3 = "Carnival Map", correctAnswer = "Halloween Map", score = 10}
- multipleChoice[20] = {question = "What was map 555?", answer1 = "Fishing Map", answer2 = "Christmas Map", answer3 = "Halloween Map", correctAnswer = "Carnival Map", score = 10}
- multipleChoice[21] = {question = "What was map 777?", answer1 = "Carnival Map", answer2 = "Christmas Map", answer3 = "Halloween Map", correctAnswer = "Fishing", score = 10}
- multipleChoice[22] = {question = "How do you teleport in module #utility WITH HOTKEY?", answer1 = "!tp [username] + click", answer2 = "Ctrl + w", answer3 = "T + click", correctAnswer = "Ctrl + click", score = 10}
- multipleChoice[23] = {question = "Which perm category do mechanism maps belong to?", answer1 = "P3", answer2 = "P11", answer3 = "P8", correctAnswer = "P6", score = 10}
- multipleChoice[24] = {question = "Which perm category do racing maps belong to?", answer1 = "P1", answer2 = "P42", answer3 = "P5", correctAnswer = "P7", score = 10}
- multipleChoice[25] = {question = "Which perm category do art maps belong to?", answer1 = "P2", answer2 = "P41", answer3 = "P9", correctAnswer = "P5", score = 10}
- multipleChoice[26] = {question = "How many continents are there in the world?", answer1 = "6", answer2 = "5", answer3 = "9", correctAnswer = "7", score = 10}
- multipleChoice[27] = {question = "How many oceans are there in the world?", answer1 = "4", answer2 = "9", answer3 = "3", correctAnswer = "5", score = 10}
- multipleChoice[28] = {question = "Which country is the capital of USA?", answer1 = "London", answer2 = "California", answer3 = "Boston", correctAnswer = "Washington DC", score = 10}
- multipleChoice[29] = {question = "How many seeds does a mango have?", answer1 = "Too many to count", answer2 = "Two", answer3 = "More than two", correctAnswer = "One only", score = 10}
- multipleChoice[30] = {question = "What sound do porcupines make when they kiss?", answer1 = "Muah!", answer2 = "Eww!", answer3 = "Hahaha!", correctAnswer = "Ouch!", score = 10}
- ------List you trueAndFalse statements here.
- trueAndFalse[1] = {statement = "Most of our tribe members are asians.", answer = "true 3", score = 10}
- trueAndFalse[2] = {statement = "Cowmushroom is a girl.", answer = "false 4", score = 10}
- trueAndFalse[3] = {statement = "Mvehpower is our first Map Creator.", answer = "false 4", score = 10}
- trueAndFalse[4] = {statement = "Water is blue.", answer = "false 4", score = 10}
- trueAndFalse[2] = {statement = "Zaxavien is a girl.", answer = "true 3", score = 10}
- ---------------------------------
- --Script Init.
- ---------------------------------
- --Player and Text
- player = {}
- textBox = {}
- tpZONE = {}
- pID = 1000
- mode = 0 --Reference modeSet for values.
- --Game Loop
- sec = 0 --Seconds
- rnd = 0 --Round
- rnm = "" --Round Name
- gm = 1 --Game Number
- ql = 0 --Last Question
- tl = 0 --Last Statement
- ca = 0 --Correct Answer
- sc = 0 --
- --Reset Scores
- for n,p in pairs(tfm.get.room.playerList) do
- tfm.exec.setPlayerScore(n, 0, false)
- end
- --Whenever a player enters the room || A new round starts
- function eventNewPlayer(n)
- player[n] =
- {
- id = pID,
- chosen = true,
- answer = 0
- }
- pID = pID + 100
- end
- for p in pairs(tfm.get.room.playerList) do
- eventNewPlayer(p)
- end
- function setChosen(n,b)
- player[n].chosen = b
- end
- ---------------------------------
- --Every New Round
- ---------------------------------
- --Part 1
- function reset(m)
- mode = m
- local map = "0"
- --Reset boxes
- for i=1,#textBox,1 do ui.removeTextArea(i,nil)
- table.remove(textBox,i)
- end
- --Choosing a map.
- if mode == 1 then
- local maps = {"5826217"}
- map = maps[math.random(#maps)]
- elseif mode == 2 then
- local maps = {"5838948"}
- map = maps[math.random(#maps)]
- end
- --Start game
- tfm.exec.disableAutoShaman(true)
- tfm.exec.newGame(map)
- tfm.exec.setGameTime(0)
- end
- --Part 2
- function eventNewGame()
- tfm.exec.disableAutoNewGame(true)
- tfm.exec.disableAutoScore(true)
- tfm.exec.disableAfkDeath(true)
- tfm.exec.disableAutoTimeLeft(true)
- for p in pairs(tfm.get.room.playerList) do
- eventNewPlayer(p)
- end
- --Finding the objects for textBoxes and teleport zones
- local xml = tfm.get.room.xmlMapInfo.xml
- local xmlGROUNDS = xml:match('<S>[^´]+</S>'):gsub("<S>","")
- for p in xmlGROUNDS:gmatch('<S[^/]+/>') do
- for i=0,15,1 do
- if p:match(string.format('lua="%s"',tostring(i))) then
- local l = p:match('L="[0-9]+"'):gsub('L="',''):gsub('"','')-2
- local h = p:match('H="[0-9]+"'):gsub('H="',''):gsub('"','')
- local x = p:match('X="[0-9]+"'):gsub('X="',''):gsub('"','')-(l/2)
- local y = p:match('Y="[0-9]+"'):gsub('Y="',''):gsub('"','')-(h/2)+1
- if mode == 1 then
- if i == 1 then textBox[1] = {x = x, y = y, w = l, h = h, event = "Q", txt = "Question will be Here\n<font color='#CB546B'>Click for Help</font>"} end
- if i == 2 then textBox[2] = {x = x, y = y, w = l, h = h, event = "T", txt = "Timer"} end
- if i == 3 then textBox[3] = {x = x, y = y, w = l, h = h, event = "RT", txt = "Answer Red"} end
- if i == 4 then textBox[4] = {x = x, y = y, w = l, h = h, event = "BF", txt = "Answer Blue"} end
- if i == 5 then textBox[5] = {x = x, y = y, w = l, h = h, event = "G", txt = "Answer Green"} end
- if i == 6 then textBox[6] = {x = x, y = y, w = l, h = h, event = "O", txt = "Answer Orange"} end
- elseif mode == 2 then
- if i == 1 then textBox[1] = {x = x, y = y, w = l, h = h, event = "Q", txt = "Question will be Here\n<font color='#CB546B'>Click for Help</font>"} end
- if i == 2 then textBox[2] = {x = x, y = y, w = l, h = h, event = "T", txt = "Timer"} end
- if i == 3 then textBox[3] = {x = x, y = y, w = l, h = h, event = "RT", txt = "True"} end
- if i == 4 then textBox[4] = {x = x, y = y, w = l, h = h, event = "BF", txt = "False"} end
- end
- if i >= 10 then
- x = p:match('X="[0-9]+"'):gsub('X="',''):gsub('"','')
- y = p:match('Y="[0-9]+"'):gsub('Y="',''):gsub('"','')
- tpZONE[i] = {x1 = x-(l/2), x2 = x+(l/2), y1 = y-(h/2), y2 = y+(h/2)}
- end
- end
- end
- end
- local tbS = "<p align = 'center'><b>"
- local tbE = "</b></p>"
- for i = 1, #textBox, 1 do
- local cc = 0x010101
- if i == 2 then
- cc = 0x000A59
- elseif i >= 3 then
- cc = 0x010101
- end
- ui.addTextArea(i,
- string.format("%s<a href='event:%s'>%s</a>%s",tbS,textBox[i].event,textBox[i].txt,tbE)
- ,nil,textBox[i].x,textBox[i].y,textBox[i].w,textBox[i].h,cc,cc,1,false)
- end
- end
- ---------------------------------
- --Buttons
- ---------------------------------
- function eventTextAreaCallback(id , n, event)
- if player[n].chosen == false then
- --Set chosen
- if id >= 3 and id <= 6 then
- player[n].answer = id
- setChosen(n,true)
- end
- --Move to a tp zone
- if event == "RT" then tfm.exec.movePlayer(n,math.random(tpZONE[10].x1,tpZONE[10].x2),math.random(tpZONE[10].y1,tpZONE[10].y2),false) end
- if event == "BF" then tfm.exec.movePlayer(n,math.random(tpZONE[11].x1,tpZONE[11].x2),math.random(tpZONE[11].y1,tpZONE[11].y2),false) end
- if event == "G" then tfm.exec.movePlayer(n,math.random(tpZONE[12].x1,tpZONE[12].x2),math.random(tpZONE[12].y1,tpZONE[12].y2),false) end
- if event == "O" then tfm.exec.movePlayer(n,math.random(tpZONE[13].x1,tpZONE[13].x2),math.random(tpZONE[13].y1,tpZONE[13].y2),false) end
- end
- end
- ---------------------------------
- --Game Loop
- ---------------------------------
- function eventLoop()
- ui.updateTextArea(2,"<b><p align = 'center'>Time: "..math.ceil(sec).." "..rnm.."</p></b>")
- if sec > 0 then
- sec = sec-0.5
- else
- sec = 0
- end
- --Round Start
- if rnd == 0 and sec == 0 then
- --Set map
- if modeSet == 0 then
- if gm < 3 then
- reset(1)
- elseif gm == 3 then
- reset(2)
- gm = 0
- end
- elseif modeSet == 1 then
- reset(1)
- elseif modeSet == 2 then
- reset(2)
- end
- --Set values, and no choosing
- sec,rnd,rnm,gm,ca = 20,1,"Get Ready!",gm+1,0
- if roundTime == false then sec = 10 end
- for n,p in pairs(tfm.get.room.playerList) do
- setChosen(n,true)
- end
- end
- --Question
- if rnd == 1 and sec == 0 then
- sec,rnd,rnm = 30,2,"Choose..."
- if roundTime == false then rnd = 3 sec = 15 end
- local tbS,tbE = "<b><p align='center'>","</p></b>"
- if mode == 1 then
- local q = math.random(1,#multipleChoice)
- if q == ql then
- q = math.random(1,#multipleChoice)
- else
- ql = q
- end
- ui.updateTextArea(1,string.format("%s<a href='event:%s'>%s\nScore: %s</a>%s",tbS,textBox[1].event,multipleChoice[q].question,multipleChoice[q].score,tbE))
- sc = multipleChoice[q].score
- local df,at = 0,{}
- for i=3,6,1 do at[i] = {v=i} end
- while df == 0 do df = at[math.random(3,6)].v end if df ~= 0 then
- ui.updateTextArea(df,string.format("%s<a href='event:%s'>%s</a>%s",tbS,textBox[df].event,multipleChoice[q].answer1,tbE)) at[df].v = 0 df = 0 end
- while df == 0 do df = at[math.random(3,6)].v end if df ~= 0 then
- ui.updateTextArea(df,string.format("%s<a href='event:%s'>%s</a>%s",tbS,textBox[df].event,multipleChoice[q].answer2,tbE)) at[df].v = 0 df = 0 end
- while df == 0 do df = at[math.random(3,6)].v end if df ~= 0 then
- ui.updateTextArea(df,string.format("%s<a href='event:%s'>%s</a>%s",tbS,textBox[df].event,multipleChoice[q].answer3,tbE)) at[df].v = 0 df = 0 end
- while df == 0 do df = at[math.random(3,6)].v end if df ~= 0 then
- ui.updateTextArea(df,string.format("%s<a href='event:%s'>%s</a>%s",tbS,textBox[df].event,multipleChoice[q].correctAnswer,tbE)) ca = df at[df].v = 0 df = 0 end
- elseif mode == 2 then
- local q = math.random(1,#trueAndFalse)
- if q == tl then
- q = math.random(1,#trueAndFalse)
- else
- tl = q
- end
- ui.updateTextArea(1,string.format("%s<a href='event:%s'>%s Score: %s</a>%s",tbS,textBox[1].event,trueAndFalse[q].statement,trueAndFalse[q].score,tbE))
- ca,sc = trueAndFalse[q].correctAnswer,trueAndFalse[q].score
- end
- for n,p in pairs(tfm.get.room.playerList) do
- setChosen(n,false)
- end
- end
- if rnd == 2 and sec == 0 then --Final Answer
- sec,rnd,rnm = 20,3,"Final Answer?"
- for n,p in pairs(tfm.get.room.playerList) do
- setChosen(n,false)
- if player[n].answer == 0 then
- tfm.exec.killPlayer(n)
- end
- end
- end
- if rnd == 3 and sec == 0 then --Round End
- sec,rnd,rnm = 10,0,"Winners!"
- if roundTime == false then sec = 5 end
- for n,p in pairs(tfm.get.room.playerList) do
- setChosen(n,true)
- if player[n].answer ~= ca then
- tfm.exec.killPlayer(n)
- else
- tfm.exec.giveCheese(n)
- tfm.exec.setPlayerScore(n,sc,true)
- end
- end
- end
- end
- -------------------------------
- --The End...
- -------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement