Ir para conteúdo

Featured Replies

Postado

bom pessoal, boa tarde a todos e estou com uma duvida, estou fazendo um projeto no protocolo 8.6 tfs 0.4 e gostaria de saber se tem como eu adiciona nas sources e como eu faço isso. seria o seguinte

entrei em um servidor hoje 8.6 e vi que dentro do templo players consegue andar em cima de players como nos servidor mais avançados, e players lvl abaixo de 100 tambem podia andar neles, e outra coisa que reparei nesse servidor, a barra de hp e mana é por porcentagem ...

 

alguem sabe algo sobre isso ?

 

obrigado desde ja

Resolvido por Fir3element

Ir para solução
  • Respostas 8
  • Visualizações 2.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • andar por cima dos players é na função canWalkthrough (player.cpp)   hp/mana por % tem q fazer essas alterações:   protocolgame.cpp, substitua:     msg->put<uint16_t>(player->getHeal

  • tenta isso aq: bool Player::canWalkthrough(const Creature* creature) const {     if(creature == this || hasCustomFlag(PlayerCustomFlag_CanWalkthrough) || creature->isWalkable() ||         (creat

Postado
  • Autor

Wakon obrigado pela resposta, mas eu ja tenho as sources já estão compiladas aos meus parâmetros.

 

Fireelement, desculpa não tinha reparado esta pz lvl 1 e esta funcionando

 

agora quanto ao o hp e a mana fica por porcentagem ele não esta, se liga só 

 

(obs: sistema de reset do jogador direto nas sources, CREDITOS: gpedro e ao Fireelement por ter me ajudado)

 

http://prntscr.com/6fy8rt

 

 

  Citar

 

16:20 You see Paladin (Level 408) [Reset 21]. He is a paladin.

Health: [76250 / 76250], Mana: [114150 / 114150].
IP: 127.0.0.1, Client: 860.
Position: [X: 95] [Y: 115] [Z: 7].

  Em 12/03/2015 em 19:25, markmv disse:

Wakon obrigado pela resposta, mas eu ja tenho as sources já estão compiladas aos meus parâmetros.

 

Fireelement, desculpa não tinha reparado esta pz lvl 1 e esta funcionando

 

agora quanto ao o hp e a mana fica por porcentagem ele não esta, se liga só 

 

(obs: sistema de reset do jogador direto nas sources, CREDITOS: gpedro e ao Fireelement por ter me ajudado)

 

http://prntscr.com/6fy8rt

 

firelement observei aqui agora que só o player maior que lvl 100 passa em player abaixo de lvl 100, nos servidor novos, nao tem essa de lvl, se é pz tool independente do lvl ele pode passar pro cima do outro char, exemplo: Area pz tool player lvl 1000 por ficar dentro de um outro player lvl 1000 entendeu ?

Postado
  Em 12/03/2015 em 19:29, markmv disse:

Wakon obrigado pela resposta, mas eu ja tenho as sources já estão compiladas aos meus parâmetros.

 

Fireelement, desculpa não tinha reparado esta pz lvl 1 e esta funcionando

 

agora quanto ao o hp e a mana fica por porcentagem ele não esta, se liga só 

 

(obs: sistema de reset do jogador direto nas sources, CREDITOS: gpedro e ao Fireelement por ter me ajudado)

 

http://prntscr.com/6fy8rt

 

 

 

firelement observei aqui agora que só o player maior que lvl 100 passa em player abaixo de lvl 100, nos servidor novos, nao tem essa de lvl, se é pz tool independente do lvl ele pode passar pro cima do outro char, exemplo: Area pz tool player lvl 1000 por ficar dentro de um outro player lvl 1000 entendeu ?

andar por cima dos players é na função canWalkthrough (player.cpp)

 

hp/mana por % tem q fazer essas alterações:

 

protocolgame.cpp, substitua:

    msg->put<uint16_t>(player->getHealth());
    msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_MAXHEALTH));

por:

    if (player->getPlayerInfo(PLAYERINFO_MAXHEALTH) > 0)
    {
        msg->put<uint16_t>(uint16_t(player->getHealth() * 100 / player->getPlayerInfo(PLAYERINFO_MAXHEALTH)));
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);
    }

substitua:

    msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_MANA));
    msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_MAXMANA));

por:

    if (player->getPlayerInfo(PLAYERINFO_MAXMANA) > 0)
    {
        msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_MANA) * 100 / player->getPlayerInfo(PLAYERINFO_MAXMANA));
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);
    }

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

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