Bom galera, venho trazer aqui um tutorial de como ajeitar o dano da magia do npc ao qual o Motodark estava com esta dúvida.
Explicando:
Bom depois de você ter uma engine com Npc Spell System ou você implanta-lo você com certeza percebe que quando o npc usa a a magia em você dá diversos hits em uma só vez e as vezes causando até um lag muito chato na animação da magia.
Começando:
No Client-Side no modTypes procure:
e abaixo de "Dir As Byte" adicione:
É extremamente necessário que você faça o mesmo no servidor!
Depois de fazer o mesmo no servidor, procure na Sub UpdateMapLogic:
Nota: Todos os sistemas/edições que posto são programação básica pois não sou um experiente em VB6, posto porque acho que vai ajudar pessoas que não sabem o básico.
Explicando:
Bom depois de você ter uma engine com Npc Spell System ou você implanta-lo você com certeza percebe que quando o npc usa a a magia em você dá diversos hits em uma só vez e as vezes causando até um lag muito chato na animação da magia.
Começando:
No Client-Side no modTypes procure:
- Código:
Private Type MapNpcRec
num As Long
target As Long
TargetType As Byte
Vital(1 To Vitals.Vital_Count - 1) As Long
Map As Long
X As Byte
Y As Byte
Dir As Byte
e abaixo de "Dir As Byte" adicione:
- Código:
TmpSpell As Long
É extremamente necessário que você faça o mesmo no servidor!
Depois de fazer o mesmo no servidor, procure na Sub UpdateMapLogic:
- Código:
' Spell Casting
For i = 1 To MAX_NPC_SPELLS
If Npc(NPCNum).Spell(i) > 0 Then
If MapNpc(mapnum).Npc(x).SpellTimer(i) + (Spell(Npc(NPCNum).Spell(i)).CastTime * 1000) < GetTickCount Then
NpcSpellPlayer x, target, i
End If
End If
Next
End If
- Código:
' Spell Casting
For i = 1 To MAX_NPC_SPELLS
MapNpc(mapnum).NPC(x).TmpSpell = Spell(i).CDTime - 1
If NPC(NPCNum).Spell(i) > 0 Then
If MapNpc(mapnum).NPC(x).TmpSpell = 0 Then
If MapNpc(mapnum).NPC(x).SpellTimer(i) + (Spell(NPC(NPCNum).Spell(i)).CastTime * 1000) < GetTickCount Then
NpcSpellPlayer x, target, i
MapNpc(mapnum).NPC(x).TmpSpell = Spell(i).CDTime = Spell(i).CDTime
End If
End If
End If
Next
End If
Nota: Todos os sistemas/edições que posto são programação básica pois não sou um experiente em VB6, posto porque acho que vai ajudar pessoas que não sabem o básico.