Ir para conteúdo
Entre para seguir isso  
Medargo

Quiz System V1 [Medargo]

Recommended Posts

Medargo    0
Medargo

Nome: Quiz System

Autor: Medargo

Versão Testada: The Easy Server, protocolo 8.6

 

Informações Adicionais

Quiz system feito a base de talkactions

Quiz system!

 

Fiz esse sistema ontem, não soube diminuir o script, então, vou explicar as talkactions.

!question:

Caso o player não possua uma pergunta em mãos, ele ira receber uma pergunta à ser respondida, por exemplo:

16:47 A Africa é um pais? Responda da seguinte maneira: '!question sim/não' apenas com 'sim' ou 'não'

 

Mas caso o player ja tenha uma pergunta em mãos, sera enviada a seguinte mensagem:

17:00 Você ja possui uma pergunta em mãos, use '!question reset' para resetar o sistema

 

---

!question sim/não:

Usado para responder a pergunta em mãos, caso a resposta esteja certa, aparecera a seguinte mensagem:

16:47 CORRETO, Sistema resetado!

 

Caso esteja errado:

16:47 ERRADO, Sistema resetado!

 

---

!question reset

Usado para resetar o sistema de perguntas, possibilitando o player pegar outra pergunta, em uso, ira aparecer a seguinte mensagem:

17:04 Sistema resetado, pode pegar outra questão.

Vamos ao script:

--[[
Script feito por Medargo
Storage value utilizado: 9845
]]--
function onSay(cid, words, param, channel)
[color=DarkRed]local perg = {
"2+2=4, isso é verdade? Responda da seguinte maneira: '!question sim/não' apenas com 'sim' ou 'não'",
"A Africa é um pais? Responda da seguinte maneira: '!question sim/não' apenas com 'sim' ou 'não'",
"Michael Jackson esta prestes a fazer uma turnê? Responda da seguinte maneira: '!question sim/não' apenas com 'sim' ou 'não'",
"Newton descobriu a gravidade com uma maça? Responda da seguinte maneira: '!question sim/não' apenas com 'sim' ou 'não'"
}[/color] 

[color=Red]local resp = {"sim", "não", "não", "sim"}[/color]

if param == '' then
  if getPlayerStorageValue(cid, 9845) == -1 then
     questionid = math.random(1,#perg)
     question = perg[questionid]
     doPlayerSendTextMessage(cid, 19, question)
     setPlayerStorageValue(cid, 9845, 1)
  else
     doPlayerSendTextMessage(cid, 18, "[color=Magenta]Você ja possui uma pergunta em mãos, use '!question reset' para resetar o sistema[/color]")
  end


elseif param ~= '' then
if getPlayerStorageValue(cid, 9845) == 1 then
   if param ~= 'reset' then 
      if param == 'sim' or param == 'não' then
               if param == resp[questionid] then
                doPlayerSendTextMessage(cid, 27, "[color=DarkOrange]CORRETO, Sistema resetado![/color]")
                setPlayerStorageValue(cid, 9845, -1)
                questionid = nil
                question = nil
               else
                doPlayerSendTextMessage(cid, 18, "[color=Lime]ERRADO, Sistema resetado![/color]")
                setPlayerStorageValue(cid, 9845, -1)
                questionid = nil
                question = nil
               end
      else
          doPlayerSendTextMessage(cid, 18, "[color=Cyan]Use 'sim' ou 'não' para responder![/color]")
      end
  else
    doPlayerSendTextMessage(cid, 19, "[color=Blue]Sistema resetado, pode pegar outra questão.[/color]")
    setPlayerStorageValue(cid, 9845, -1)
    questionid = nil
    question = nil
  end 
else
doPlayerSendTextMessage(cid, 18, "[color=Purple]Você não possui pergunta em mãos, para conseguir uma, use '!question'[/color]'")
end
end

return true
end

Vamos à TAG:

 

<talkaction words="!question" script="nomedoscript.lua"/>
F.A.Q

 

Como adicionar perguntas?

Simplismente adicione mais strings na tabela perg, lembrando que após ter adicionado a pergunta, deve-se adicionar a respectiva resposta na tabela resp, os idexes da pergunta e da respectiva resposta devem ser iguais.

 

Como editar os textos das mensagens?

Mude o texto das strings para o texto que deseja:

 

Quando ja tem pergunta em mão

Resposta correta

Resposta errada

Quando a resposta é diferente de sim ou não

Quando sistema é resetado por !question resetQuando player responde sem ter pergunta em mão

Funcionamento

questionsi.png

 

 

Considerações finais

Só podem ser usadas perguntas com respostas de sim ou não, nas respostas só podem conter strings: sim ou não

 

 

:bye:

Compartilhar este post


Link para o post
Addicted    1
Addicted

Obrigado pela contribuição.

 

Aprovado.

Compartilhar este post


Link para o post
jadsondossantos    4
jadsondossantos

LOL, sistema muito bom cara, é bom para ficar estudando no tibia kk'!

Muito bom, pena que nenhum gordo comentou...

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×