Ir para conteúdo

Featured Replies

Postado

Salve rapaziada, peguei um script de um NPC antigo  que é um DICER

e ele funciona normalmente, porém, toda vez que alguem joga no dicer no jogo

ele da um mini bug no meu distro e eu gostaria de resolver isso...

 

o script é esse:

 

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 coins = {[2148] = 1, [2152] = 100, [2160] = 10000}

function countMoneyOnPos(pos)
 local money = 0
 for stack = 1, 50  do
  pos.stackpos = stack
  local item = getThingFromPos(pos)
  if item and item.uid > 0 then
   if coins[item.itemid] then
    money = money + coins[item.itemid] * item.type
   end
  end
 end
 return money
end
    

    
local posCoal = {x = 184, y = 30, z = 5} -- POSIÇÃO DO COAL, ONDE O GOLD DEVE ESTAR
local posNpc = {x = 184, y = 29, z = 5} -- POSIÇÃO DO NPC
local pos = getPosByDir(getThingPos(cid), getCreatureLookDirection(cid), 1) -- NÃO ALTERAR

    if msgcontains(msg, 'l') or msgcontains(msg, 'L') or msgcontains(msg, 'low') or msgcontains(msg, 'Low') then
        if countMoneyOnPos(pos) > 0 then
            if math.random(1, 6) <= 3 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2148).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2148).uid)
                doRemoveItem(getTileItemById(pos, 2152).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2152).uid)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(1, 3)..', parabéns!', TALKTYPE_ORANGE_1)
            else
                doRemoveItem(getTileItemById(pos, 2148).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2148).uid)
                doRemoveItem(getTileItemById(pos, 2152).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2152).uid)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(4, 6)..', tente novamente!', TALKTYPE_ORANGE_1)
            end
        else
            doCreatureSay(getNpcId(), getCreatureName(cid)..', coloque uma quantia de gold no recipiente para começar a apostar!', TALKTYPE_ORANGE_1)
        end
        
    elseif msgcontains(msg, 'h') or msgcontains(msg, 'H') or msgcontains(msg, 'high') or msgcontains(msg, 'High') then
        if countMoneyOnPos(pos) > 0 then
            if math.random(1, 6) <= 3 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2148).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2148).uid)
                doRemoveItem(getTileItemById(pos, 2152).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2152).uid)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(4, 6)..', parabéns!', TALKTYPE_ORANGE_1)
            else
                doRemoveItem(getTileItemById(pos, 2148).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2148).uid)
                doRemoveItem(getTileItemById(pos, 2152).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2152).uid)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                repeat
                until not doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(1, 3)..', tente novamente!', TALKTYPE_ORANGE_1)
            end
        else
            doCreatureSay(getNpcId(), getCreatureName(cid)..', coloque uma quantia de gold no recipiente para começar a apostar!', TALKTYPE_ORANGE_1)
        end
    end
return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

25-06-2017 13-18-26.png

Postado

Esta é uma mensagem automática! Este tópico foi movido para a área correta.
Pedimos que você leia as regras do fórum.

Spoiler

This is an automated message! This topic has been moved to the correct area.
Please read the forum rules.

 

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo