Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o tema • Voltar para a ficha do tema
[GF]Spell Linear Avançada
+10
Raizen
evokke
Pablo Kawan
kiritor
Himinato
Lord Pegason
gui408
Cavalo
Valentine
Dooolly
14 participantes
Página 4 de 5
Página 4 de 5 • 1, 2, 3, 4, 5
Re: [GF]Spell Linear Avançada
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?
_________________
Sign
- Sign¹:
- Sign²:
Spooky- Membro Ativo
- Mensagens : 267
Créditos : 24
Re: [GF]Spell Linear Avançada
Bartolomeo escreveu:
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 :)
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?
Vou ver oque posso fazer bartolomeu, mas agr não estou vendo aqui, tou pensando em postar alguns sistemas...
Re: [GF]Spell Linear Avançada
Ok, obrigado. assim que poder me mandar uma msg via skype ou pm. obrigado :)Dooolly escreveu:Bartolomeo escreveu:
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 :)
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?
Vou ver oque posso fazer bartolomeu, mas agr não estou vendo aqui, tou pensando em postar alguns sistemas...
_________________
Sign
- Sign¹:
- Sign²:
Spooky- Membro Ativo
- Mensagens : 267
Créditos : 24
rockdeath- Novato
- Mensagens : 6
Créditos : 2
Re: [GF]Spell Linear Avançada
Dooly, interessante também seria colocar um sistema parecido com esse: http://www.mmorpgbrasil.net/t14510-tutorialspell-linear-com-direcao
Se você conseguir me diz como? tipo eu tentei mais deve ser diferente o linear desse com aquele (lembrando isso é só um complemento!!)
Se você conseguir me diz como? tipo eu tentei mais deve ser diferente o linear desse com aquele (lembrando isso é só um complemento!!)
_________________
Sign
- Sign¹:
- Sign²:
Spooky- Membro Ativo
- Mensagens : 267
Créditos : 24
Re: [GF]Spell Linear Avançada
Antes dessa correcao aqui funcionava legal,com essa aki da case spell,se muitas pessoas utilizar da over flow,depois vc rever ai,pois o antigo nao dava over flow.
gui408- Ocasional
- Mensagens : 227
Créditos : 10
Re: [GF]Spell Linear Avançada
gui408 escreveu:Antes dessa correcao aqui funcionava legal,com essa aki da case spell,se muitas pessoas utilizar da over flow,depois vc rever ai,pois o antigo nao dava over flow.
obrigado por reportar!
mas poderia ver a linha onde esse bug está ocorrendo. não tenho muitas pessoas para utiliza-lá...
Re: [GF]Spell Linear Avançada
Ok,depois eu vejo aqui,pq eu ja alterei pro antigo,pois la coldow tudo certinho=esse so fui pra testar mesmo,pois no outro eu tinha arrumado,mas depois eu vejo,pq eu tirei e coloquei o outro antigo ai edit aki qualquer coisa.
gui408- Ocasional
- Mensagens : 227
Créditos : 10
Re: [GF]Spell Linear Avançada
Tópico Atualizado!
Corrigido erro de overflow.
Código Corrigido:
Corrigido erro de overflow.
Código Corrigido:
- 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 > 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
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
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
Re: [GF]Spell Linear Avançada
Desculpem reviver o tópico, mas achei justo - visto que existem vários sistemas de magias lineares cheios de bugs e, pelo o que eu notei, o Doolly tá disposto a atualizar este -. Por isso, seguem alguns erros que encontrei:
1°: A Magia não é parada por um bloqueio, o que deveria, afinal, elas não podem passam através das paredes do jogo
2° ( Mais simples ): As animações estão bugando de ordem
1°: A Magia não é parada por um bloqueio, o que deveria, afinal, elas não podem passam através das paredes do jogo
2° ( Mais simples ): As animações estão bugando de ordem
_________________
...
Cavalo- Iniciante
- Mensagens : 67
Créditos : 5
Página 4 de 5 • 1, 2, 3, 4, 5
Tópicos semelhantes
» [E.O]Spell Linear 100% Funcional (verdadeiro) [FIX]
» Spell Linear
» Spell linear
» (?) Spell Linear com flecha
» [E.O]Spell Linear 100% Funcional (verdadeiro)
» Spell Linear
» Spell linear
» (?) Spell Linear com flecha
» [E.O]Spell Linear 100% Funcional (verdadeiro)
Página 4 de 5
Permissões neste sub-fórum
Não podes responder a tópicos