Ir para conteúdo

Featured Replies

  • Respostas 10
  • Visualizações 5.5k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.  

  • Com certeza irei aderir à isso também ! Amanhã vou estudar um pouco de como fazer esse negocio do SQM, creio que o infight vai ser moleza!! Eu estou com uma ideia legal e inovadora tbm para posta

  • vou aguardar!!! sobre a pos é simples, por exemplo:   local MyPos, maxSqm = player:getPosition(), 7 -- demais blocos if MyPos:getDistance(var:getPosition()) >= maxSqm then -- o 'var' é de

Postado
  • Autor

@Vodkart Script Atualizado !

Postado
7 horas atrás, tataboy67 disse:

@Vodkart Script Atualizado !

 

que rápido!! parabéns, progrediu bastante!! continue assim e daqui a pouco já pode começar a resolver pedidos na área de dúvida e suporte de script!! kkkk

 

Agora ficou com cara de script de quest e rpg!! abraços.

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Postado
  • Autor
19 minutos atrás, Vodkart disse:

 

que rápido!! parabéns, progrediu bastante!! continue assim e daqui a pouco já pode começar a resolver pedidos na área de dúvida e suporte de script!! kkkk

 

Agora ficou com cara de script de quest e rpg!! abraços.

Hahaha vlww ^^ ... obrigado, vou ver se faço mais hoje também.

Vou continuar treinando e obrigado pelas dicas ? 

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

  • 1 month later...
Postado
Em 06/07/2018 em 21:18, tataboy67 disse:

Opa galera beleza? Como prometido eu tentei fazer 1 script e vim posta-lo no TibiaKing...

O script é simples e com uma boa configuração:

  • Numero de membros da Party
  • Nível necessário
  • Se precisa de PZ para entrarem
  • Se precisa que todos estejam perto
  • Se só o Leader poderá entrar
  • Teleporte que os jogadores irão
  • Items necessários


Como o script funciona?
              O script ele serve como uma forma de o jogador poder entrar em 1 Sala com a necessidade de uma Partynível necessário e alguns Items.

Meu intuito em fazer esses tipos de scripts: 

               Estou cada vez mais tentando aprender um pouco mais em relação a scripts Lua... Sou um pouco leigo nessa parte, mas vou continuar treinando e estudando para alimentar meu conhecimento na linguagem e o conteúdo no Fórum. Espero que vocês me apoiem no que estou tentando fazer, e agradeço a todos que estão me ajudando a entender um pouco do assunto.

Sem mais delongas, vamos ao Script:

Adicione a linha em:
(data/movements/movements.xml)


	<movevent event="StepIn" actionid="5900" script="Tile_Party.lua"/>


Crie um arquivo em:
(data/movements/scripts/Tile_Party.lua)


local config = {   
    members = 2, -- membros ou +.
    level = 300, -- nivel que todos os membros devem ter para entrar.
    leader = false, -- somente o leader pode entrar no teleport.
    pz = true, -- só irá funcionar se todos os membros tiverem em PZ area.
    pos_to = {x = 1143, y = 1064, z = 7}, -- posição que os jogadores serão teleportados.
    other = {
        pert = true, -- só poderá entrar se os membros tiverem na quant_sqm de distancia.
        quant_sqm = 7 -- jogadores tem que estar a 7 sqm de distancia do jogador que entrou no TP.
    },
    items = { -- itens necessários para que os players entrem.
        [1] = {item = 2160, count = 1},
        [2] = {item = 2159, count = 1}
        -- [3] = {item = ItemID, count = Quantidade}
    },
}

function onStepIn(player, item, position, fromPosition)
    
    local party = player:getParty() 
    
    if not party then
        player:teleportTo(fromPosition)
        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
        position:sendMagicEffect(CONST_ME_MAGIC_RED)
        return player:sendCancelMessage("You don't have a party.")
    end
    
    local leader = party:getLeader()
    local member = party:getMembers()
    
    if config.leader and player ~= leader then
        player:teleportTo(fromPosition)
        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
        position:sendMagicEffect(CONST_ME_MAGIC_RED)
        player:sendCancelMessage("Somente o leader pode entrar por aqui.")
        return false
    end
    table.insert(member, leader)
    
    local ready = {}
    
    if #member >= config.members-1 then
        for _, var in pairs(member) do
            if var:getLevel() > config.level then

                if config.other.pert then
                    if player:getPosition():getDistance(var:getPosition()) >= config.other.quant_sqm then
                        player:teleportTo(fromPosition)
                        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
                        player:sendCancelMessage("Seu time tem que esta proximo de voce.")
                        return
                    end
                end
                
                if config.pz then
                    if not getTileInfo(getThingPos(var)).protection then
                        player:teleportTo(fromPosition)
                        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
                        return player:sendCancelMessage("Seu time tem que estar em protection zone.")
                    end
                end
    
                for k, v in pairs(config.items) do
                    if var:getItemCount(v.item) < v.count then
                        player:teleportTo(fromPosition)
                        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
                        player:sendTextMessage(22,string.format("O membro (corno) %s não possui %sx %s.", var:getName(), v.count, ItemType(v.item):getName()))
                        return false
                    end
                end
                table.insert(ready, var)                
            else
                player:sendTextMessage(22,"Um dos membros da party não possui nivel superior a "..config.level..".")
                player:teleportTo(fromPosition)
                player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
                return false
            end
        end
        
        if rawequal(#ready, #member) then
            for _, var in pairs(member) do
                for k, v in pairs(config.items) do
                    var:removeItem(v.item, v.count)
                end
                
                var:sendTextMessage(22,"Your team join the room.")
                var:teleportTo(config.pos_to)
                var:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
            end
        end
    else
        player:teleportTo(fromPosition)
        player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
        position:sendMagicEffect(CONST_ME_MAGIC_RED)
        player:sendTextMessage(20,"Somente party's com " .. config.members-1 .. " ou mais jogadores, poderão passar.")
    end
    return true
end

Deixe seu REP+ Para me motivar ainda mais a postar novos scripts para vocês.


Créditos:
@Snowsz
@KotZletY
@Vodkart
@Lyu

Está atualizado o script...
Algumas configurações foram adicionadas !


local config = {   
    members = 2, -- membros ou +.
    level = 300, -- nivel que todos os membros devem ter para entrar.
    leader = false, -- somente o leader pode entrar no teleport.
    pz = true, -- só irá funcionar se todos os membros tiverem em PZ area.
    pos_to = {x = 1143, y = 1064, z = 7}, -- posição que os jogadores serão teleportados.
    other = {
        pert = true, -- só poderá entrar se os membros tiverem na quant_sqm de distancia.
        quant_sqm = 7 -- jogadores tem que estar a 7 sqm de distancia do jogador que entrou no TP.
    },
    items = { -- itens necessários para que os players entrem.
        [1] = {item = 2160, count = 1},
        [2] = {item = 2159, count = 1}
        -- [3] = {item = ItemID, count = Quantidade}
    },
}

 

seria maneiro que se para entrar na sala, na party fosse obrigado a ter 1 membro de cada vocação do servidor. Seria possível fazer isso ? gostaria de implementa-lo dessa maneira no meu servidor mais como não e possível vou usando este ai. Bem RPG que nem o vodkart disse.

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