Ir para conteúdo

[Tutorial] Ajustando andar diagonal


Posts Recomendados

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. :D:

Link para o comentário
Compartilhar em outros sites

Parabéns manin, ótimo conteúdo =] espero que ajude muitas pessoas, cheguei a disponibilizar minha dxp com uma parte do diagonal, mas como eu não sabia totalmente ficou dificil deixar 100% kkk 

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
21 horas atrás, Matheusszim disse:

@Noninhouh eu uso a base pda open source não sei onde fica a source do otclient

 

 

Você deve ter baixado um otclient já compilado...

Procura no github as sources de acordo a versão do seu otclient!

Link para o comentário
Compartilhar em outros sites

16 horas atrás, Noninhouh disse:

 

Você deve ter baixado um otclient já compilado...

Procura no github as sources de acordo a versão do seu otclient!

pode me ajudar com essa questão ai não entendo muito de programação e algumas linhas na creature.cpp da source do server que tão ai ta faltando :/

 

Link para o comentário
Compartilhar em outros sites

9 horas atrás, Matheusszim disse:

pode me ajudar com essa questão ai não entendo muito de programação e algumas linhas na creature.cpp da source do server que tão ai ta faltando :/

 

 

Eu esqueci de avisar que a versão do tfs que eu fiz essas modificações foi a 0.4, veja se essa é a sua...

Eu nunca vi as sources de uma outra versão de tfs para saber se será do mesmo jeito as modificações

E em respeito as sources do seu client, só procurar cara, tenho certeza que em algum outro fórum ou até mesmo no github deve ter a mesma versão de acordo seu otclient

Link para o comentário
Compartilhar em outros sites

Em 18/11/2017 at 20:15, Noninhouh disse:

Eu esqueci de avisar que a versão do tfs que eu fiz essas modificações foi a 0.4, veja se essa é a sua...

Eu nunca vi as sources de uma outra versão de tfs para saber se será do mesmo jeito as modificações

E em respeito as sources do seu client, só procurar cara, tenho certeza que em algum outro fórum ou até mesmo no github deve ter a mesma versão de acordo seu otclient

se que é possível source de tfs 0.4 para otclient ter extension do servidor o dbo?

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, Senju Saiyajin disse:

se que é possível source de tfs 0.4 para otclient ter extension do servidor o dbo?

Desculpa mas não entendi sua pergunta kk

Tá perguntando se da pra fazer um derivado de DBO a partir de uma source de TFS 0.4?

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...