Ir para conteúdo
  • 0

Npc De Report...ajuda Pra Acrecentar Algumas Coisas Rep+ 3 Dias Seguidos


Diley007

Pergunta

tipo queria quando voce falace com o npc abrice uma aba do npc (aquela que as letras ficam azul), que nao tivesse fila tipo chega um player fala hi ai o outro tem que esperar ele sair pra falar com o npc (se chegasse 20 players o npc atendesse), que tivesse resposta final tipo no meu caso o player chega fala hi, reportar e o npc pede o report quando o player falar o report o npc fizesse uma ultima pergunta: tem certeza que deseja reportar "report que o player escreveu" ai se o player falar nao voltasse tudo de novo ai ele tera que falar o report denovo, e se falar sim o player automaticamente e teleportado para determinado lugar...

 

bom e isso REP+ 3 dias seguidos, talvez ate mais se eu estiver muito feliz

 

o npc e esse aqui:

 

local keywordHandler = KeywordHandler:new()

local npcHandler = NpcHandler:new(keywordHandler)

NpcSystem.parseParameters(npcHandler)

local talkState = {}

function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end

function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end

function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end

function onThink() npcHandler:onThink() end

function creatureSayCallback(cid, type, msg)

if(not npcHandler:isFocused(cid)) then

return false

end

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid

local msg = string.lower(msg)

local storage = 787544

local delaytime = 120

local a = "data/logs/time1.txt"

local f = io.open(a, "a+")

 

if isInArray({"reportar"}, msg) then

if (getPlayerStorageValue(cid, storage) <= os.time()) then

npcHandler:say("digite o seu report por favor", cid)

talkState[talkUser] = 1

else

npcHandler:say("You must wait " .. getPlayerStorageValue(cid, storage) - os.time() .. " seconds to report.", cid)

talkState[talkUser] = 0

end

elseif talkState[talkUser] == 1 then

setPlayerStorageValue(cid, storage, os.time()+delaytime)

npcHandler:say("Obrigado, nos agradecemos a sua colaboraçao", cid)

f:write(""..getPlayerName(cid).." reported a bug at " .. os.date("%d %B %Y - %X.", os.time()) .."\n "..msg..".\n\n----------------------------------------------------------\n")

f:close()

talkState[talkUser] = 0

npcHandler:releaseFocus(cid)

end

return TRUE

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
local msg = string.lower(msg)
local storage = 787544
local delaytime = 120
local a = "data/logs/time1.txt"
local f = io.open(a, "a+")
local pos = {x = 160, y = 54 , z = 7}

if isInArray({"reportar"}, msg) then
if (getPlayerStorageValue(cid, storage) <= os.time()) then
selfSay('digite o seu report por favor?', cid)
talkState[talkUser] = 1
else
selfSay('You must wait ' .. getPlayerStorageValue(cid, storage) - os.time() .. ' seconds to report.')
talkState[talkUser] = 0
end
elseif talkState[talkUser] == 1 then
if (string.len(msg) > 10 and string.len(msg) < 90) then
npcHandler:say("tem certeza que deseja reportar: "..msg.."? {yes}", cid)
selfSay('tem certeza que deseja reportar:  '..msg..'? {yes}')
str = msg
talkState[talkUser] = 2
else
selfSay('minimo 10 letras e máximo 90 letras, incluindo espaços', cid)
end
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
setPlayerStorageValue(cid, storage, os.time()+delaytime)
selfSay('Obrigado, nos agradecemos a sua colaboraçao', cid)
f:write(""..getPlayerName(cid).." reported a bug at " .. os.date("%d %B %Y - %X.", os.time()) .."\n "..str..".\n\n----------------------------------------------------------\n")
f:close()
doTeleportThing(cid, pos)
talkState[talkUser] = 0
npcHandler:releaseFocus(cid)
elseif msg == "no" and talkState[talkUser] >= 1 then  
selfSay("tudo bem então.", cid)
str = nil  
talkState[talkUser] = 0  
npcHandler:releaseFocus(cid)  
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

vlw rep+ hj amanha e depois :D

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...