Ir para conteúdo

Noninhouh

Visconde
  • Total de itens

    318
  • Registro em

  • Última visita

  • Dias Ganhos

    5

Histórico de Reputação

  1. Upvote
    Noninhouh recebeu reputação de tutuzeera em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  2. Upvote
    Noninhouh recebeu reputação de BrunooMaciell em Potion System - Igual PxG   
    Bom, vim trazer a vocês o sistema de potion igual ao da pxg...
    Gostaria de falar que peguei esse sistema do servidor PDA e so mudei umas coisinhas pra ele healar o pokemon do mesmo jeito que o da pxg
     
    Actions/scripts/potion.lua:
     
     
     
     
    Actions/actions.xml:
     
     
     
    OBS: Consertem os id's dos items e as cores do animated text.
     
     
    Creditos:
    Slicer, Brun123, eu e qm ajudo fazer o sistema original do PDA
  3. Upvote
    Noninhouh recebeu reputação de Dann123 em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  4. Upvote
    Noninhouh recebeu reputação de gabrielzika em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  5. Upvote
    Noninhouh recebeu reputação de Drakopoulos em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  6. Upvote
    Noninhouh recebeu reputação de Frenvius em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  7. Upvote
    Noninhouh recebeu reputação de nociam em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  8. Upvote
    Noninhouh recebeu reputação de Ryukiimaru em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  9. Upvote
    Noninhouh recebeu reputação de FlamesAdmin em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  10. Upvote
    Noninhouh recebeu reputação de kttallan em [Tutorial] Ajustando andar diagonal   
    Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
    Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
     
    Em creature.cpp do server, procure pela linha:
    if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; Esse lastStepCost será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. Edite esse valor ao seu gosto!
     
    Em creature.cpp do client, procure as linhas que tem isso:
    getStepDuration(true) E deixe assim:
    getStepDuration()  
    Agora procure por:
    float factor = 3; if(g_game.getClientVersion() <= 810) factor = 2; Apague essa parte
     
    Logo mais abaixo tem:
    if(!ignoreDiagonal && (m_lastStepDirection == Otc::NorthWest || m_lastStepDirection == Otc::NorthEast || m_lastStepDirection == Otc::SouthWest || m_lastStepDirection == Otc::SouthEast)) interval *= factor; Em factor, deixe o mesmo valor que você deixou em lastStepCost no servidor.
     
    Agora em localplayer.cpp no client, novamente procure por:
    getStepDuration(true) E troque por:
    getStepDuration()  
    Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. 
  11. Upvote
    Noninhouh deu reputação a KyoGron em Limitar quantidade de mensagens em cima do player   
    Olá pessoal, bom não costumo postar nessa area, mas como eu estive futucando esses dias um pouco em OTClient e sou um pouco curioso, acabei descobrindo umas coisas bem legais =) 
     
    statictext.cpp procure por:
      else if(m_messages.size() > 10) {         m_messages.pop_front();         m_updateEvent->cancel();         m_updateEvent = nullptr;     } Explicação:
    O Número 10 representa a quantidade de mensagens máximas que irá aparecer em cima do player, No caso se eu colocar o valor 1, irá aparecer no máximo 2 mensagens acima do player (Como acontece no OTCliente da PxG) então fica por conta de quem quiser fazer as alterações escolher a quantidade máxima.
  12. Upvote
    Noninhouh deu reputação a Refe em Adicionando mais tiles a visão do jogador!   
    Hoje eu vim ensinar como aumenta a "tela" de jogo do OTCLIENT

    (Desculpe o merchant, era a unica imagem que eu tinha salvo)

    Testado em : 0.3.6pl1, Pode funcionar em 1.0 com alterações pequenas.


    Em protocolgame.cpp ache:
    return ((x >= myPos.x - 8 + offsetz) && (x <= myPos.x + 9 + offsetz) && (y >= myPos.y - 6 + offsetz) && (y <= myPos.gety + 7 + offsetz)); e troque por:
    return ((x >= myPos.x - Map::maxClientViewportX + offsetz) && (x <= myPos.x + (Map::maxClientViewportX+1) + offsetz) && (y >= myPos.y - Map::maxClientViewportY + offsetz) && (y <= myPos.y + (Map::maxClientViewportY+1) + offsetz)); Agora, continuando em protocolgame.cpp ache:
    GetMapDescription(pos.x - 8, pos.y - 6, pos.z, 18, 14, msg); E troque por:
    GetMapDescription(pos.x - Map::maxClientViewportX, pos.y - Map::maxClientViewportY, pos.z, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, msg); Continuando em protocolgame.cpp ache a função:
    void ProtocolGame::sendMoveCreature(const Creature* creature, const Tile* newTile, const Position& newPos, uint32_t newStackpos, const Tile* oldTile, const Position& oldPos, uint32_t oldStackpos, bool teleport) Dentro da função encontre:
    A parte que começa em if (oldPos.y > newPos.y) { e Termina em GetMapDescription(newPos.x - 8, newPos.y - 6, newPos.z, 1, 14, msg); } e troque por:
    if (oldPos.y > newPos.y) { // north, for old x msg->AddByte(0x65); GetMapDescription(oldPos.x - Map::maxClientViewportX, newPos.y - Map::maxClientViewportY, newPos.z, (Map::maxClientViewportX+1)*2, 1, msg); } else if (oldPos.y < newPos.y) { // south, for old x msg->AddByte(0x67); GetMapDescription(oldPos.x - Map::maxClientViewportX, newPos.y + (Map::maxClientViewportY+1), newPos.z, (Map::maxClientViewportX+1)*2, 1, msg); } if (oldPos.x < newPos.x) { // east, [with new y] msg->AddByte(0x66); GetMapDescription(newPos.x + (Map::maxClientViewportX+1), newPos.y - Map::maxClientViewportY, newPos.z, 1, (Map::maxClientViewportY+1)*2, msg); } else if (oldPos.x > newPos.x) { // west, [with new y] msg->AddByte(0x68); GetMapDescription(newPos.x - Map::maxClientViewportX, newPos.y - Map::maxClientViewportY, newPos.z, 1, (Map::maxClientViewportY+1)*2, msg); Agora ache:
    if(newPos.z == 7) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 5, 18, 14, 3, skip); //(floor 7 and 6 already set) GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 4, 18, 14, 4, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 3, 18, 14, 5, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 2, 18, 14, 6, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 1, 18, 14, 7, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, 0, 18, 14, 8, skip); Depedendo da Source, a parte será assim:

     
    Por:
    if(newPos.z == 7) //going to surface { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 5, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 3, skip); //(floor 7 and 6 already set) GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 4, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 4, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 3, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 5, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 2, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 6, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 1, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 7, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, 0, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, 8, skip); Agora ache:
    else if(newPos.z > 7) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, oldPos.getZ() - 3, 18, 14, 3, skip); Depedendo da source será assim:

     
    Por:
    else if(newPos.z > 7) //underground, going one floor up (still underground) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, oldPos.z - 3, (Map::maxClientViewportX+1), (Map::maxClientViewportY+1)*2, 3, skip); Agora ache:
    //moving up a floor up makes us out of sync //west msg->AddByte(0x68); GetMapDescription(oldPos.x - 8, oldPos.y - 5, newPos.z, 1, 14, msg); //north msg->AddByte(0x65); GetMapDescription(oldPos.x - 8, oldPos.y - 6, newPos.z, 18, 1, msg); E troque por:
    //moving up a floor up makes us out of sync //west msg->AddByte(0x68); GetMapDescription(oldPos.x - Map::maxClientViewportX, oldPos.y - (Map::maxClientViewportY-1), newPos.z, 1, (Map::maxClientViewportY+1)*2, msg); //north msg->AddByte(0x65); GetMapDescription(oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, newPos.z, (Map::maxClientViewportX+1)*2, 1, msg); Agora ache:
    if(newPos.z == 8) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, newPos.z, 18, 14, -1, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, newPos.z + 1, 18, 14, -2, skip); GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, newPos.z + 2, 18, 14, -3, skip); Dependendo da source poderá ser:

     
    e troque por:
    if(newPos.z == 8) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, newPos.z, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, -1, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, newPos.z + 1, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, -2, skip); GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, newPos.z + 2, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, -3, skip); Agora ache:
    else if(newPos.z > oldPos.z && newPos.z > 8 && newPos.z < 14) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - 8, oldPos.y - 6, newPos.z + 2, 18, 14, -3, skip); Depedendo da source pode ser assim:

     
    E troque por:
    else if(newPos.z > oldPos.z && newPos.z > 8 && newPos.z < 14) { int32_t skip = -1; GetFloorDescription(msg, oldPos.x - Map::maxClientViewportX, oldPos.y - Map::maxClientViewportY, newPos.z + 2, (Map::maxClientViewportX+1)*2, (Map::maxClientViewportY+1)*2, -3, skip); Agora em map.h edite essa parte como quiser:
    static const int32_t maxViewportX = 11; //min: maxClientViewportX + 1 static const int32_t maxViewportY = 11; //min value: maxClientViewportY + 1 static const int32_t maxClientViewportX = 8; static const int32_t maxClientViewportY = 6; O modo de Edição é assim:

     

    Agora em map.cpp do OTCLIENT
    Ache:
    void Map::resetAwareRange() { AwareRange range; range.left = 8; range.top = 6; range.bottom = 7; range.right = 9; setAwareRange(range); } Troque por:
    { AwareRange range; range.left = 8; //Valor que colocou em maxClientViewportX range.top = 6; //Valor que colocou em maxClientViewportY range.bottom = range.top+1; range.right = range.left+1; setAwareRange(range); } Créditos:
    Flatlander - OTLAND - Criação
    Ceetros - Tradução


    Agora vamos deixar o OTCLIENT lindão.





    Troque tudo de modules/game_interface/interface.lua (na pasta do OTCLIENT)
    por:
    http://pastebin.com/tH7qyreW
    (para o tutorial não ficar muito grande botei no pastebin, já que o spoiler tá bugando)
    Creditos dessa parte:
    Edubart (Criador do OTCLIENT)
    Ceetros
     
    Caso tenha ajudado, dê um rep+
  13. Upvote
    Noninhouh deu reputação a Refe em creature:soltaMagia("name") PARA TFS 1.x   
    Olá, hoje eu vim postar a função
    creature:soltaMagia("nomedamagia")
    Para o TFS 1.X.
     
    Bom, eu estou fazendo um Poketibia com base no TFS 1.3 e vou postar essa função para quem quiser seguir o mesmo.
    Segue um exemplo de uso:
    Em LUASCRIPT.CPP
    Abaixo de
    registerMethod("Player", "addExperience", LuaScriptInterface::luaPlayerAddExperience); Adicione:
    registerMethod("Creature", "soltaMagia", LuaScriptInterface::luaSoltaMagia); Logo abaixo da função:
    int LuaScriptInterface::luaCreatureGetEvents(lua_State* L) Adicione:
    int LuaScriptInterface::luaSoltaMagia(lua_State* L) { //creature:soltaMagia("name") const std::string& spellName = getString(L, 2); if(Creature* creature = getUserdata<Creature>(L, 1)) { InstantSpell* spell = g_spells->getInstantSpellByName(spellName); if(!spell) { lua_pushboolean(L, false); return 1; } Creature* target = creature->getAttackedCreature(); if(target) spell->castSpell(creature, target); else spell->castSpell(creature, creature); lua_pushboolean(L, true); } else { lua_pushboolean(L, false); } return 1; } Em luascript.h registre:
            static int luaSoltaMagia(lua_State* L);
    static int luaSoltaMagia(lua_State* L); Agora é só compilar a proveitar
  14. Upvote
    Noninhouh recebeu reputação de Dann123 em [Encerrado] {Pedido} !service   
    Testei saporra mil vezes ate que consegui fazer kkkkkkk:
     
     
     

    <talkaction words="!service" event="script" value="NOMEDOTEUARKIVO.lua"/>
     
    OBS: Em vermelho vc põe qt vai custar para falar, no caso ali tah 1kk pra server de tibia, se for server de pokemon vc deixa assim 100000000, que no caso tb é 1kk, so que no server de poke
    Em azul vc coloca ah msg que o player vai receber se ele não tiver o dinheiro
  15. Upvote
    Noninhouh recebeu reputação de Drk Shadow em [Encerrado] [PEDIDO]Ball que não pega certos pokemons   
    http://www.xtibia.com/forum/topic/221148-restricao-de-catch/
  16. Upvote
    Noninhouh recebeu reputação de Deadpool em [PDA] New Poketele   
    Bom, muitas pessoas estavam tentando colocar para o pokemon se teleportar igual ao PxG, 5 sqm's na vertical ou 7 sqm's na horizontal
    Mas, o poketele q jah vem no PDA, ele so teleporta o poke com um valor unico, ou seja, se for 5 na horizontal tera de ser 5 na vertical, ou set for 7 na horizontal, 7 na vertical, e assim sucessivamente...
     
    Esse poketele aki q eu so fiz uma pekenininininina modificação, faz ele teleporta o poke q nem o dah PxG
    Bom, se o seu poketele jah esta funcionando, apenas substitua o script por este:
     
     
     
    Caso keira trocar, so mudar em maxx ou maxy
    ----------------------------------------------------------
    Essa tag, é apenas se o seu poketele não estiver ativo:
     
     
     
    OBS: é pra substituir os scripts acima pelos seus!!
    OBS²: caso keira trocar o effect, muda nas duas partes 'doSendMagicEffect(getThingPos(cid), 211)'
  17. Upvote
    Noninhouh recebeu reputação de Ryukiimaru em [Show Off] Barra Skill - baseada na pxg   
    @Zeref
    eu to fazendo isso pro meu server...
    E eu acho que não dah pra descompilar akeles negoço dah pxg u.u
    eu tava lendo um topico, e alguem falava que 'parece' que o edubart fez um codificador proprio pra ele shauhsuahs
    mais sl, não tenhu certeza =/
     
    -------- EDIT
    u.u não resisti, tive que posta haushauhsu

     
    lock system no cp
  18. Upvote
    Noninhouh recebeu reputação de Ryukiimaru em [Show Off] Barra Skill - baseada na pxg   
    Bom, como o xtibia tah todo bugado, e eu n consegui abrir um novo show off, acabei achando melhor postar aki mrm...
    Meu butão de Guild!
     
     
     
    só possui 2 unicos bug que dpois eu tiro u.u
    quando vc não tem guild e aperta algum dakeles botões ele acaba falando o comando no meio do nada u.u
    e como o comando (!nick player, nick) não coloca o nick no look do player do server PDA, eu achei melhor tira-lo =/
    --------
    agr gogo adicionar:
    Check Guild
  19. Upvote
    Noninhouh recebeu reputação de Drk Shadow em [DxP] Exclusivo Poketibia OpenSource   
    sdds eu nos creditos pelo client
  20. Upvote
    Noninhouh recebeu reputação de SamueLGuedes em [PDA] New Poketele   
    Bom, muitas pessoas estavam tentando colocar para o pokemon se teleportar igual ao PxG, 5 sqm's na vertical ou 7 sqm's na horizontal
    Mas, o poketele q jah vem no PDA, ele so teleporta o poke com um valor unico, ou seja, se for 5 na horizontal tera de ser 5 na vertical, ou set for 7 na horizontal, 7 na vertical, e assim sucessivamente...
     
    Esse poketele aki q eu so fiz uma pekenininininina modificação, faz ele teleporta o poke q nem o dah PxG
    Bom, se o seu poketele jah esta funcionando, apenas substitua o script por este:
     
     
     
    Caso keira trocar, so mudar em maxx ou maxy
    ----------------------------------------------------------
    Essa tag, é apenas se o seu poketele não estiver ativo:
     
     
     
    OBS: é pra substituir os scripts acima pelos seus!!
    OBS²: caso keira trocar o effect, muda nas duas partes 'doSendMagicEffect(getThingPos(cid), 211)'
  21. Upvote
    Noninhouh recebeu reputação de Loouis em [PDA] New Poketele   
    Bom, muitas pessoas estavam tentando colocar para o pokemon se teleportar igual ao PxG, 5 sqm's na vertical ou 7 sqm's na horizontal
    Mas, o poketele q jah vem no PDA, ele so teleporta o poke com um valor unico, ou seja, se for 5 na horizontal tera de ser 5 na vertical, ou set for 7 na horizontal, 7 na vertical, e assim sucessivamente...
     
    Esse poketele aki q eu so fiz uma pekenininininina modificação, faz ele teleporta o poke q nem o dah PxG
    Bom, se o seu poketele jah esta funcionando, apenas substitua o script por este:
     
     
     
    Caso keira trocar, so mudar em maxx ou maxy
    ----------------------------------------------------------
    Essa tag, é apenas se o seu poketele não estiver ativo:
     
     
     
    OBS: é pra substituir os scripts acima pelos seus!!
    OBS²: caso keira trocar o effect, muda nas duas partes 'doSendMagicEffect(getThingPos(cid), 211)'
  22. Upvote
    Noninhouh deu reputação a jeerenato em Show Off Jeer Pokémon Perspective 45º   
    Golduck







    Victreebel







    Steelix







    ( Vaporeon / Jolteon )







    Venusaur









    Charmander (SmokeScreen)









    Charmander (Scratch)







    Exeggutor Psychic







    Bulbasaur (Take Down)







    Venusaur (Take Down)





  23. Upvote
    Noninhouh recebeu reputação de victorjgp em CoolDown Bar do Ditto   
    passa a função ae de qd o ditto copia o pokemon, e de quando vc solta um poke pra fora da ball q eu tento ageitar pra vc
  24. Upvote
    Noninhouh recebeu reputação de Aberos em Diminuir Função   
    tenta fazer com for i = x, não tenho crtza nenhuma pq n sei se isso pega os locais blabla =...
     

  25. Upvote
    Noninhouh recebeu reputação de Jeffer000 em [Duvida] ProgressBar OtCliente para PokeDex   
    dash v6...
    tenta fazer assim po:
    local maximum = 200 hpBar = poke:recursiveGetChildById("hpBar") hpBar:setPercent(hpValue) hpBar:setValue(hpValue, 0, maximum)
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...