Tópico Retirado da MMORPGBR
Olá Galera!
Hoje vou ensinar a corrigir o Bug de Ataque do Eclipse Origins. Segue a Imagem :
Problema: Quando você ataca, a Sprite no seu cliente move da sprite 1 para a sprite 2. Porém, no cliente dos outros players você continua parado. O que faz o jogo ficar parado, sem animações.
Okay, Vamos a resolução!
Server Side
In Sub HandleAttack ache isso:
Olá Galera!
Hoje vou ensinar a corrigir o Bug de Ataque do Eclipse Origins. Segue a Imagem :
Problema: Quando você ataca, a Sprite no seu cliente move da sprite 1 para a sprite 2. Porém, no cliente dos outros players você continua parado. O que faz o jogo ficar parado, sem animações.
Okay, Vamos a resolução!
Server Side
In Sub HandleAttack ache isso:
- Código:
' Send this packet so they can see the person attacking
'SendAttack Index
Troque por:
- Código:
' Send this packet so they can see the person attacking
SendAttack Index
Então no final do ModServerTCP, adicione:
- Código:
Sub SendAttack(ByVal index As Long)
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteLong ServerPackets.SAttack
Buffer.WriteLong index
SendDataToMap GetPlayerMap(Index), Buffer.ToArray()
Set Buffer = Nothing
End Sub
Correção Valentine (Não testada ainda por mim.) :
Seguindo esse tutorial eu aconselho ocultar as linhas, no modGameLogic
- Código:
With Player(MyIndex)
.Attacking = 1
.AttackTimer = GetTickCount
End With
Deixando assim:
- Código:
'With Player(MyIndex)
'.Attacking = 1
'.AttackTimer = GetTickCount
'End With
Caso contrário, ele irá "balançar a perna" (movimento de ataque) duas vezes, em localhost você não percebe, mas se você testar fora de localhost provavelmente isso irá acontecer visualmente.
Creditos : Guardian