Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Já Foi Resolvido Topico Fechado !

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

​Obstaculo Impossível?

Impossível é existir algo Impossível ;) 

 

 

 

 

Confira os Meus Conteúdos ! 

Te ajudei ? REP + E Ficamos KIT ;)

Link para o post
Compartilhar em outros sites

É Poketibia ^^ 8.54


Se alguem puder ajudar, Ainda vou dar os REP+


UP !! Ajuda ae :)


UP !!!


UP -_- Ninguem pra ajudar?


Gente, se não for possivel esse sistema, pelo menos um que seja assim :

 

2 Players Vão ao Tal npc, ou um comando por talckaction ex :  !casar "nome do player que quer casar',

e apos falar esse comando e a outra pessoa que você quer casar também vai ter que executar o mesmo comando para se aceito...

E Apos ser aceito os 2 Players, que acabaram de ser casar ganha Informação adicional, ao qualquer outro Players dar Look nele,

 

Ex : You see SkyFrozer (level 101). He is treinador. Casado com JulinhaaSZ

 

Se Puderem me Ajudar dou 5 REP+

​Obstaculo Impossível?

Impossível é existir algo Impossível ;) 

 

 

 

 

Confira os Meus Conteúdos ! 

Te ajudei ? REP + E Ficamos KIT ;)

Link para o post
Compartilhar em outros sites

vá em data/NPC e crie um arquivo chamado Celest.xml e cole isso dentro

<?xml version="1.0"?>
<npc name="Celest" script="data/npc/scripts/marriagesystem.lua" walkinterval="50000" floorchange="0">
<health now="1000" max="1000"/>
<look type="130" head="0" body="114" legs="114" feet="0" addons="0"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. You can {marriage} or may {divorce}."/>
</parameters>
</npc>

E depois entre na pasta script e crie marriagesystem.lua e adicione o spoiler abaixo.

local keywordHandler = KeywordHandler:new()


local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
 
local Topic, Partner = {}, {}
 
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 say(msg, cid)
    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)

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Link para o post
Compartilhar em outros sites

Joadson Irei testar agora mesmo !


Funcionou Perfeitamente...

Mais tipo Ve se tem como você me ajudar, Quando eu estou falando com o NPC, ao eu falar uma frase meu boneco repete ela umas 15x e o NPC também, e assim consecutivamente, queria aprender á tirar isso...

E Outra coisa, não teria como aparecer no Look de tal player com quem estou casado?

Mais Uma coisa, Queria Saber como troca as Roupas que quando a pessoa se divorcia, fica uma roupa do Tibia Normal, queria trocar !

 

Vou dar enquanto isso 1 REP+, me ajude ai, estarei Dando + Logo Logo


@ Edit 

Á E já ia esquecendo quando se casa ganha varios anel, queria apenas ganhar 1 :)

​Obstaculo Impossível?

Impossível é existir algo Impossível ;) 

 

 

 

 

Confira os Meus Conteúdos ! 

Te ajudei ? REP + E Ficamos KIT ;)

Link para o post
Compartilhar em outros sites

Quem puder colaborar 5 REP+++ em 3 Contas.

Amigo, primeiramente peço que remova esta parte do seu tópico, pois é proibido ter múltiplas contas no fórum.

Atenciosamente,

Bruno Minervino

Link para o post
Compartilhar em outros sites

@SkyFrozer, amigo, se algum membro for pego com múltiplas contas, todas as contas serão banidas permanentemente.

Então, por favor não faça isso, pois nós da equipe temos nossos meios de descobrir quem faz/fez isso. ;)

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

Editei, Apesar que eu não sabia sobre isso.

​Obstaculo Impossível?

Impossível é existir algo Impossível ;) 

 

 

 

 

Confira os Meus Conteúdos ! 

Te ajudei ? REP + E Ficamos KIT ;)

Link para o post
Compartilhar em outros sites

Aproveitando a relevância do Tópico, Teria como fazer o mesmo sistema para Ot 8.6 sem ser poketibia? se tiver como REP+ - 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo