Sim, ele me falou que estava dando erro no case2 pelo skype, eu disse para ele colocar o código acima do end select. obrigado pelo sistema dooly :)Dooolly escreveu:Bartolomeo escreveu:Você tem que 1 criar uma animation depois ir no editor spell criar uma spell ir no Type colocar em linear marcar uma caixa chamada Area off Effect Spell? e ir na scroll de baixo (tipo uma barra deitada)
aumentar quantos números quiser (sugiro menos de 10) e depois aumentar o tamanho lateral e veja se funfa, se náo funfar [e a engine
isso mesmo Bartolomeo!
mas se não der certo oq ele falou, reveja o tutorial, principalmente nessa parte aqui:Eu escreveu:Nessa Mesma Sub Procure Por:
- Código:
end select
Case 2 ' targetted
Acima Adicione:
- Código:
Case SPELL_TYPE_LINEAR
'/// - MAGIA LINEAR AVANÇADA - ///
For linha = 1 To Spell(SpellNum).AoE
Select Case GetPlayerDir(Index)
Case DIR_UP
If Not GetPlayerY(Index) - linha < 0 Then
SendAnimation GetPlayerMap(Index), Spell(SpellNum).SpellAnim, GetPlayerX(Index), GetPlayerY(Index) - linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index) - linha
End If
Case DIR_DOWN
If Not GetPlayerY(Index) + linha > Map(mapnum).MaxY Then
SendAnimation GetPlayerMap(Index), Spell(SpellNum).SpellAnim, GetPlayerX(Index), GetPlayerY(Index) + linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index) + linha
End If
Case DIR_LEFT
If Not GetPlayerX(Index) - linha < 0 Then
SendAnimation GetPlayerMap(Index), Spell(SpellNum).SpellAnim, GetPlayerX(Index) - linha, GetPlayerY(Index)
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) - linha, GetPlayerY(Index)
End If
Case DIR_RIGHT
If Not GetPlayerX(Index) + linha > Map(mapnum).MaxX Then
SendAnimation GetPlayerMap(Index), Spell(SpellNum).SpellAnim, GetPlayerX(Index) + linha, GetPlayerY(Index)
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) + linha, GetPlayerY(Index)
End If
End Select
'/// - Animação Lateral - ///
If Spell(SpellNum).AnimL > 0 Then
AnimL = Spell(SpellNum).AnimL
Else
AnimL = Spell(SpellNum).SpellAnim
End If
'/// - Magia Lateral - ///
If Spell(SpellNum).Tamanho > 0 Then
If linha > 1 Then
For linha2 = 1 To Spell(SpellNum).Tamanho
Select Case GetPlayerDir(Index)
Case DIR_UP
If Not GetPlayerY(Index) - linha < 0 Then
If Not GetPlayerX(Index) - linha2 < 0 Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) - linha2, GetPlayerY(Index) - linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) - linha2, GetPlayerY(Index) - linha
End If
If Not GetPlayerX(Index) + linha2 > Map(mapnum).MaxX Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) + linha2, GetPlayerY(Index) - linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) + linha2, GetPlayerY(Index) - linha
End If
End If
Case DIR_DOWN
If Not GetPlayerY(Index) + linha > Map(mapnum).MaxY Then
If Not GetPlayerX(Index) - linha2 < 0 Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) + linha2, GetPlayerY(Index) + linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) + linha2, GetPlayerY(Index) + linha
End If
If Not GetPlayerX(Index) + linha2 > Map(mapnum).MaxX Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) - linha2, GetPlayerY(Index) + linha
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) - linha2, GetPlayerY(Index) + linha
End If
End If
Case DIR_LEFT
If Not GetPlayerX(Index) - linha < 0 Then
If Not GetPlayerY(Index) - linha2 < 0 Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) - linha, GetPlayerY(Index) - linha2
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) - linha, GetPlayerY(Index) - linha2
End If
If Not GetPlayerY(Index) + linha2 > Map(mapnum).MaxY Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) - linha, GetPlayerY(Index) + linha2
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) - linha, GetPlayerY(Index) + linha2
End If
End If
Case DIR_RIGHT
If Not GetPlayerX(Index) + linha > Map(mapnum).MaxX Then
If Not GetPlayerY(Index) + linha2 > Map(mapnum).MaxY Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) + linha, GetPlayerY(Index) + linha2
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) + linha, GetPlayerY(Index) + linha2
End If
If Not GetPlayerY(Index) - linha2 < 0 Then
SendAnimation GetPlayerMap(Index), AnimL, GetPlayerX(Index) + linha, GetPlayerY(Index) - linha2
UsarMagiaLinear Index, SpellNum, vital, GetPlayerMap(Index), GetPlayerX(Index) + linha, GetPlayerY(Index) - linha2
End If
End If
End Select
Next
End If
End If
Next
DidCast = True
Mais teria como fazer um sistema de mar? tipo o player não pode andar pelo mar. só se tiver um barco e me mandar por pm ou skype?