Ir para conteúdo

Featured Replies

Postado

Problema com sistema de casamento
Quando falo com o NPC e digito uma "marriage" ele faz meu personagem repetir a palavra varias vezes e ele também repete as próximas opções muitas vezes, print abaixo para melhor compreensão

Desculpa se postei no Local errado  :facepalm: 

 

post-134655-0-62090600-1431196796_thumb.

Editado por pokefelipe (veja o histórico de edições)

Resolvido por Sanieg

Ir para solução
  • Respostas 11
  • Visualizações 824
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Ishh, tenta procurar outro script de casamento no tibiaking

  • Se você se casou o npc setou a storage até ai tudo bem porém não setou a outfit de forma "correta" certo ? pois se ele setou a outfit acho que esta funcionado um segundo erro seria em você tentar se c

Posted Images

Postado

eu nao sei mexer nesse tipo de servidor, so no 8.6 mas vou tentar te ajudar

vai na pasta do ot e procura o script de casamento e cola o codigo aqui se nao achar procura o npc "padre" usando ctrl+F

Editado por xpionx (veja o histórico de edições)

Postado
  • Autor
 
local npc, _msg = getNpcId(), msg:gsub('{', ''):gsub('}', '')
    local pos = getThingPos(npc)
    for _, tid in ipairs(getSpectators(pos, 7, 5, false) or {}) do
        if isPlayer(tid) then
            doCreatureSay(npc, tid ~= cid and _msg or msg, tid == cid and TALKTYPE_PRIVATE_NP or TALKTYPE_SAY, false, tid, pos)
        end
    end
end
 
local function marry(cid, msg, ext)
    msg = msg:gsub('my heart belongs to ', '')
    local player = getPlayerByName(msg)
    if player then
        if player ~= cid then
            if getPlayerPartner(player) == 0 then
                if getPlayerStorageValue(cid, 46000) == 1 then
                    if getPlayerStorageValue(player, 46001) == getPlayerGUID(cid) then
                        doCreatureSay(cid, msg, TALKTYPE_SAY)
                        say('Vossas almas estão agora unidos por toda a eternidade. Como um símbolo de seu amor, vocês receberam seus anéis de casamento gravado e roupas festivas. ...', cid)
                        say('Tenham uma otima vida de casados. Vá agora e comemore sua lua de mel!', cid)
                        for _, pid in ipairs({cid, player}) do
                            doPlayerAddOutfitId(pid, 34, 0)
                            local v = getCreatureOutfit(pid)
                            v.lookType = getPlayerSex(pid) == 0 and 329 or 328
                            doCreatureChangeOutfit(pid, v)
                            doSendMagicEffect(getThingPos(pid), CONST_ME_HEARTS)
                            setPlayerStorageValue(pid, 46002, os.time() + 86400)
                        end
                        doSendMagicEffect(getNpcPos(), CONST_ME_MAGIC_BLUE)
                        local nc, np = getCreatureName(cid), getCreatureName(player)
                        doItemSetAttribute(doPlayerAddItem(cid, 10502, 1), 'description', np .. ' & ' .. nc .. ' forever - married on ' .. os.date('%b ' .. os.date('*t').day .. ', %Y') .. '.')
                        doItemSetAttribute(doPlayerAddItem(player, 10502, 1), 'description', nc .. ' & ' .. np .. ' forever - married on ' .. os.date('%b ' .. os.date('*t').day .. ', %Y') .. '.')
                        doPlayerSetPartner(cid, getPlayerGUID(player))
                        doPlayerSetPartner(player, getPlayerGUID(cid))
                        Topic[cid] = nil
                        return true
                    elseif ext == 1 then
                        say(getCreatureName(cid) .. ', você tem certeza de seu amor para ' .. getCreatureName(player) .. ' e gostaria de juntar as suas almas para a eternidade?', cid)
                        Topic[cid] = 5
                        Partner[cid] = getPlayerGUID(player)
                    end
                else
                    say('Oh não! Seu anel e caixa de equipamento estão em falta! Eu espero que você não esquecê-los! Você pode por favor dar-lhes para mim agora?', cid)
                    Topic[cid] = 8
                    return true
                end
            else
                if ext then say('Esta pessoa já está casado com alguém.', cid) end
            end
        else
            if ext then say('Você não pode casar-se com si mesmo.', cid) end
        end
    else
        if ext then say('Esta pessoa não está online.', cid) end
    end
    if ext then doCreatureSay(cid, msg, TALKTYPE_SAY) end
end
 
function creatureSayCallback(cid, type, msg)
    if msgcontains(msg, 'meu coração pertence a') and not npcHandler:isFocused(cid) then
        local v =  marry(cid, msg)
        if v then
            npcHandler:addFocus(cid)
            return true
        end
    elseif (msgcontains(msg, 'hello') or msgcontains(msg, 'hi')) and (not npcHandler:isFocused(cid)) then
        npcHandler:say('Olá '..getCreatureName(cid)..'! Eu tenho o poder {marriage} ou {divorce}.', cid)
        npcHandler:addFocus(cid)
        Topic[cid] = nil
    elseif not npcHandler:isFocused(cid) then
        return false
    elseif msgcontains(msg, 'bye') or msgcontains(msg, 'farewell') then
        npcHandler:say('Adeus, '..getCreatureName(cid)..'. Que o Deus cuide de você!', cid)
        Topic[cid] = nil
        npcHandler:releaseFocus(cid)
    elseif msgcontains(msg, 'marriage') or msgcontains(msg, 'marry') or msgcontains(msg, 'ceremony') or msgcontains(msg, 'wedding') then
        if getPlayerPartner(cid) ~= 0 then
            say('Sim, de fato, vocês estão casados, ' .. getCreatureName(cid) .. '. Espero que o seu amor ainda está florescendo e próspera.', cid)
            Topic[cid] = nil
        elseif getPlayerStorageValue(cid, 46000) < 1 then
            say('Antes de podermos começar a cerimônia de casamento, cada um de vocês precisa me entregar um anel de casamento em branco e uma caixa com uma roupa de casamento. ' .. getCreatureName(cid) .. ', você tem esses itens com você e você está disposto a dá-los a mim agora?', cid)
            Topic[cid] = 6
        else
            say('Você me deseja iniciar a cerimônia de casamento agora?', cid)
            Topic[cid] = 1
        end
        doCreatureSay(cid, msg, TALKTYPE_SAY)
    elseif Topic[cid] == 1 then
        if msgcontains(msg, 'yes') or (msgcontains(msg, 'i') and msgcontains(msg, 'will')) then
            say('Em nome de Deus e sua benevolência, pergunto-lhe, ' .. getCreatureName(cid) .. ': ambos estão prontos para casar?', cid)
            Topic[cid] = 2
        else
            say('Talvez um outro tempo, o casamento não é um passo deve-se considerar, sem amor no coração.', cid)
            Topic[cid] = nil
        end
        doCreatureSay(cid, msg, TALKTYPE_SAY)
    elseif Topic[cid] == 2 then
        if msgcontains(msg, 'yes') or (msgcontains(msg, 'i') and msgcontains(msg, 'will')) then
            say('Um momento de silêncio por favor... Tenho a honra de invocar os poderes eternos que vigiam nossas almas e vidas. Por favor, repita comigo: {Que Deus nos Abençoe|}!', cid)
            doSendMagicEffect(getNpcPos(), CONST_ME_MAGIC_BLUE)
            Topic[cid] = 3
        end
        doCreatureSay(cid, msg, TALKTYPE_SAY)
    elseif Topic[cid] == 3 then
        if msgcontains(msg, 'Que Deus nos Abençoe') or msgcontains(msg, 'que Deus nos Abençoe') or msgcontains(msg, 'que Deus nos abencoe') then
            say('Eu te pergunto: ' .. getCreatureName(cid) .. ', Qual é o nome da pessoa que {seu coração pertence}?', cid)
            Topic[cid] = 4
        else
            --
        end
        doCreatureSay(cid, msg, TALKTYPE_SAY)
    elseif Topic[cid] == 4 then
        marry(cid, msg, 1)
    elseif Topic[cid] == 5 then
        if msgcontains(msg, 'yes') or (msgcontains(msg, 'i') and msgcontains(msg, 'will')) then
            say('Então, pelos poderes dos deuses, sua alma está agora ligado ao seu amado. ' .. getPlayerNameByGUID(Partner[cid]) .. ', Agora dê um passo a frente e me diga se seu coração pertence a ' .. getCreatureName(cid) .. ' também.', cid)
            setPlayerStorageValue(cid, 46001, Partner[cid])
            Topic[cid] = nil
            doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED)
        elseif msgcontains(msg, 'no') then
            say('Sua negação de amor dói em meu coração. Deixe agora!', cid)
            Topic[cid] = nil
            npcHandler:releaseFocus(cid)
        end
        doCreatureSay(cid, msg, TALKTYPE_SAY)
    elseif Topic[cid] == 6 then
        if msgcontains(msg, 'yes') or (msgcontains(msg, 'i') and msgcontains(msg, 'will')) then
                            say('Obrigado. Eu vou dar-lhes de volta para você quando for a hora certa. Por favor, certifique-se de que você tem tanto de me entregou seus itens antes de começar a {ceremony}.', cid)
                setPlayerStorageValue(cid, 46000, 1)
                else
            say('Hm, then not.', cid)
        end
        Topic[cid] = nil
    elseif Topic[cid] == 8 then
        if msgcontains(msg, 'yes') then
                        say('Obrigado. Agora vamos continuar - por favor me diga novamente, seu coração pertence a?', cid)
                setPlayerStorageValue(cid, 46000, 1)
                Topic[cid] = 9
                return true
                    else
            say('Hm, then not.', cid)
        end
        Topic[cid] = nil
    elseif Topic[cid] == 9 then
        marry(cid, msg, true)
    elseif msgcontains(msg, 'divorce') and getPlayerPartner(cid) > 0 then
        npcHandler:say('O que, pedido de um divórcio? Você anseia pelas alegrias da solteiro? Eu sei bem, meu casamento foi um campo de batalha ... mas menos do que isso. Você está infeliz no casamento?', cid)
        Topic[cid] = 10
    elseif Topic[cid] == 10 and msgcontains(msg, 'yes') then
        npcHandler:say('Não há justiça no mundo, quando uma mulher bonita como você é tratada mal. Não que eu tenha uma conexão especial com os Deuses ou qualquer coisa - mas posso organizar o seu divórcio, se é isso que você deseja. Você quer?', cid)
        Topic[cid] = 11
    elseif Topic[cid] == 11 and msgcontains(msg, 'yes') then
        npcHandler:say('Hm. Entenda, uh... Gostaria de fazê-lo gratuitamente, mas eu poderia, de fato, usar algum dinheiro. Faça-me um favor e \'donate\' 5000 gold coins, para que eu possa comprar algo, uhm... Então eu vou fazer o resto. O que você diz? ', cid)
        Topic[cid] = 12
    elseif Topic[cid] == 12 and msgcontains(msg, 'yes') then
        npcHandler:say('Nenhum p ... problema. E não tem volta agora! Mas, só para ter certeza, - você tem certeza que você quer libertar-se da miséria do casamento, e se livrar da pessoa com quem se casou em um momento de loucura? ', cid)
        Topic[cid] = 13
    elseif Topic[cid] == 13 and msgcontains(msg, 'yes') then
        if doPlayerRemoveMoney(cid, 5000) then
            npcHandler:say('Ehem. Pelos deuses e deixe este casamento infeliz e equivocado, chegou ao fim. Todos os títulos vão ser quebrado e assim por diante.- Não cometa o mesmo erro outra vez!', cid)
            local partner = getPlayerPartner(cid)
            if partner ~= 0 then
                local t = {cid}
                local player = getPlayerByGUID(partner)
                if player then
                    table.insert(t, player)
                else
                    db.executeQuery("UPDATE `players` SET `marriage` = 0 WHERE `id` = " .. partner)
                    db.executeQuery("UPDATE `player_items` SET `itemtype` = 10510 WHERE `player_id` = " .. partner .. " AND `itemtype` = 10502")
                end
                for _, pid in ipairs(t) do
                    doPlayerSetPartner(pid, 0)
                    local v = getCreatureOutfit(pid)
                    if isInArray({328, 329}, v.lookType) then
                        v.lookType = getPlayerSex(pid) == 0 and 136 or 128
                        doCreatureChangeOutfit(pid, v)
                    end
                    doPlayerRemoveOutfitId(pid, 34)
                    while doPlayerRemoveItem(pid, 10502, 1) do
                        doPlayerAddItem(pid, 10510, 1)
                    end
                end
            end
        else
            npcHandler:say('Damn, I bet <hicks> your cheating spouse took all of your money <hicks> from you. You\'re as poor as a church mouse. <hicks>', cid)
        end
    end
    return true
end
 
npcHandler:setMessage(MESSAGE_FAREWELL, 'Que Deus esteja com você')
npcHandler:setMessage(MESSAGE_WALKAWAY, 'Que Deus esteja com você')
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
 
 
Postado

else
say('Você me deseja iniciar a cerimônia de casamento agora?', cid)
Topic[cid] = 1

 

 

onde tiver isso vc tenta mudar o "1" por "nil"

Postado
  • Autor
  Em 09/05/2015 em 19:52, xpionx disse:

else

say('Você me deseja iniciar a cerimônia de casamento agora?', cid)

Topic[cid] = 1

 

 

onde tiver isso vc tenta mudar o "1" por "nil"

Ok vou tentar aqui mano  :D

Vish não deu certo,  :hum:

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