Meu npc de aposta faz 3 aposta diferente mais remove todos a mesma quantia e coloca a mesma quantia e a 1 aposta não tá prestando alguém ajude a versão é e Do OTS, version 0.1.0 (Beta Version) 8.6
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
function thinkCallback(cid) local rand = math.random(1,100) if rand == 1 then selfSay('Oi! Ganhe dinheiro com sua sorte!') end if rand == 2 then selfSay ('Só entendo português, diga oi.') end if rand == 3 then selfSay ('Posso te ajudar?') end return true end
function greetCallback(cid) return true end
local mpn = math.random(1,10) local npcn = math.random(1,10) local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'jogar')) then selfSay('O jogo é bem simples, você só precisa decidir se quer apostar 1 crystal coin, 10 crystal coins ou 100 crystal coins. Após decidir sua aposta, será sorteado um número entre 1 e 10 para mim e para você, vence quem sortear o maior número. Se der empate, você recebe o dinheiro da aposta de volta, se você ganhar receberá o dobro do valor da aposta e se perder eu fico com o seu dinheiro da aposta. Diga {1 crystal coin}, {10 crystal coins} ou {100 crystal coins} para começar o jogo.', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, '1 crystal coin') and talkState[talkUser] == 1) then selfSay('Você tem certeza que quer apostar 1 crystal coin?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then if getPlayerMoney(cid) >= tab.aposta1[1] then doPlayerRemoveMoney(cid, tab.aposta1[1]) setPlayerStorageValue(cid, 2224, npcn) setPlayerStorageValue(cid, 55411, mpn) talkState[talkUser] = 0 if getPlayerStorageValue(cid, 55411) < getPlayerStorageValue(cid, 2224)then selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Você Perdeu!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) == getPlayerStorageValue(cid, 2224) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Deu Empate!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) > getPlayerStorageValue(cid, 2224) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Você Venceu!',cid) doPlayerAddMoney(cid, tab.aposta1[2]) talkState[talkUser] = 1 end else selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid) end elseif(msgcontains(msg, '10 crystal coin') and talkState[talkUser] == 1) then selfSay('Você tem certeza que quer apostar 10 crystal coin?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then if getPlayerMoney(cid) >= tab.aposta2[2] then doPlayerRemoveMoney(cid, tab.aposta2[1]) setPlayerStorageValue(cid, 2225, npcn) setPlayerStorageValue(cid, 55412, mpn) talkState[talkUser] = 0 if getPlayerStorageValue(cid, 55412) < getPlayerStorageValue(cid, 2225)then selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Você Perdeu!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55412) == getPlayerStorageValue(cid, 2225) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Deu Empate!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55412) > getPlayerStorageValue(cid, 2225) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Você Venceu!',cid) doPlayerAddMoney(cid, tab.aposta2[2]) talkState[talkUser] = 1 end else selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid) end elseif(msgcontains(msg, '100 crystal coin') and talkState[talkUser] == 1) then selfSay('Você tem certeza que quer apostar 100 crystal coin?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then if getPlayerMoney(cid) >= tab.aposta3[2] then doPlayerRemoveMoney(cid, tab.aposta3[1]) setPlayerStorageValue(cid, 2226, npcn) setPlayerStorageValue(cid, 55413, mpn) talkState[talkUser] = 0 if getPlayerStorageValue(cid, 55413) < getPlayerStorageValue(cid, 2226)then selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Você Perdeu!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55413) == getPlayerStorageValue(cid, 2226) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Deu Empate!',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55413) > getPlayerStorageValue(cid, 2226) then selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Você Venceu!',cid) doPlayerAddMoney(cid, tab.aposta3[2]) talkState[talkUser] = 1 end else selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Pergunta
damiaotorres 0
Meu npc de aposta faz 3 aposta diferente mais remove todos a mesma quantia e coloca a mesma quantia e a 1 aposta não tá prestando alguém ajude a versão é e Do OTS, version 0.1.0 (Beta Version) 8.6
local tab = {
aposta1 = {10000, 20000}, -- apostaN = {custo, premio},
aposta2 = {100000, 2000000},
aposta3 = {1000000, 2000000}
}
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
function thinkCallback(cid)
local rand = math.random(1,100)
if rand == 1 then
selfSay('Oi! Ganhe dinheiro com sua sorte!')
end
if rand == 2 then
selfSay ('Só entendo português, diga oi.')
end
if rand == 3 then
selfSay ('Posso te ajudar?')
end
return true
end
function greetCallback(cid)
return true
end
local mpn = math.random(1,10)
local npcn = math.random(1,10)
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
if(msgcontains(msg, 'jogar')) then
selfSay('O jogo é bem simples, você só precisa decidir se quer apostar 1 crystal coin, 10 crystal coins ou 100 crystal coins. Após decidir sua aposta, será sorteado um número entre 1 e 10 para mim e para você, vence quem sortear o maior número. Se der empate, você recebe o dinheiro da aposta de volta, se você ganhar receberá o dobro do valor da aposta e se perder eu fico com o seu dinheiro da aposta. Diga {1 crystal coin}, {10 crystal coins} ou {100 crystal coins} para começar o jogo.', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, '1 crystal coin') and talkState[talkUser] == 1) then
selfSay('Você tem certeza que quer apostar 1 crystal coin?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
if getPlayerMoney(cid) >= tab.aposta1[1] then
doPlayerRemoveMoney(cid, tab.aposta1[1])
setPlayerStorageValue(cid, 2224, npcn)
setPlayerStorageValue(cid, 55411, mpn)
talkState[talkUser] = 0
if getPlayerStorageValue(cid, 55411) < getPlayerStorageValue(cid, 2224)then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Você Perdeu!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55411) == getPlayerStorageValue(cid, 2224) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Deu Empate!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55411) > getPlayerStorageValue(cid, 2224) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55411)..'. Meu número: '..getPlayerStorageValue(cid, 2224)..'. Você Venceu!',cid)
doPlayerAddMoney(cid, tab.aposta1[2])
talkState[talkUser] = 1
end
else
selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid)
end
elseif(msgcontains(msg, '10 crystal coin') and talkState[talkUser] == 1) then
selfSay('Você tem certeza que quer apostar 10 crystal coin?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
if getPlayerMoney(cid) >= tab.aposta2[2] then
doPlayerRemoveMoney(cid, tab.aposta2[1])
setPlayerStorageValue(cid, 2225, npcn)
setPlayerStorageValue(cid, 55412, mpn)
talkState[talkUser] = 0
if getPlayerStorageValue(cid, 55412) < getPlayerStorageValue(cid, 2225)then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Você Perdeu!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55412) == getPlayerStorageValue(cid, 2225) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Deu Empate!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55412) > getPlayerStorageValue(cid, 2225) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55412)..'. Meu número: '..getPlayerStorageValue(cid, 2225)..'. Você Venceu!',cid)
doPlayerAddMoney(cid, tab.aposta2[2])
talkState[talkUser] = 1
end
else
selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid)
end
elseif(msgcontains(msg, '100 crystal coin') and talkState[talkUser] == 1) then
selfSay('Você tem certeza que quer apostar 100 crystal coin?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'sim') and talkState[talkUser] == 1) then
if getPlayerMoney(cid) >= tab.aposta3[2] then
doPlayerRemoveMoney(cid, tab.aposta3[1])
setPlayerStorageValue(cid, 2226, npcn)
setPlayerStorageValue(cid, 55413, mpn)
talkState[talkUser] = 0
if getPlayerStorageValue(cid, 55413) < getPlayerStorageValue(cid, 2226)then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Você Perdeu!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55413) == getPlayerStorageValue(cid, 2226) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Deu Empate!',cid)
talkState[talkUser] = 1
elseif getPlayerStorageValue(cid, 55413) > getPlayerStorageValue(cid, 2226) then
selfSay('Seu número: '..getPlayerStorageValue(cid, 55413)..'. Meu número: '..getPlayerStorageValue(cid, 2226)..'. Você Venceu!',cid)
doPlayerAddMoney(cid, tab.aposta3[2])
talkState[talkUser] = 1
end
else
selfSay('Desculpe, mas você não possui dinheiro para esta aposta',cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados