Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Wave Spell


hisherwin
 Share

Recommended Posts

Do anyone know how to form a Wave Spell?

Legend:

X = Spell Animation

O = Player Location

If an AoE is like this

X X X X X X X

X X X X X X X

X X X O X X X

X X X X X X X

X X X X X X X

And a Linear is like this

O X X X X X X X X

X X X X X X X X O

X Ā  O

X Ā  X

X Ā  X

X Ā  X

X Ā  X

O Ā X

how can i make a spell that hit like this

Ā  Ā  Ā  Ā  Ā  X Ā  Ā  Ā  Ā  X

Ā  Ā  Ā  Ā X X Ā  Ā  Ā  Ā  X XĀ 

O X X X Ā  Ā  Ā  Ā  X X X O

Ā  Ā  Ā  Ā X X Ā  Ā  Ā  Ā  X X

Ā  Ā  Ā  Ā  Ā  X Ā  Ā  Ā  Ā  X

X X X X X Ā  Ā  X X X X X

Ā  Ā X X X Ā  Ā  Ā  Ā  Ā  X X X

Ā  Ā  Ā  X Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  X

Ā  Ā  Ā  O Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā O

, Can you help me with the code?
Link to comment
Share on other sites

Superior wave

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  :poonbox: <ā€“--Sherwin

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XXXX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  XX

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  X

Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā  :originsparkrules.gif: <--Amazi

Love,

Amazi

XD
Link to comment
Share on other sites

> Still overflow, because my index is more then the max_players, i was suppose to be clear from the game xD

I saw you just do aoe and if people get hurt behind you just be like "Oh crap, im so sorry, the wave has to come behind, and doesn't touch me.

Example.

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXDEADXPERSONXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXDEAD PERSONXXXXXXX

XXXXXXXXXXXXXXXXOXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXDEAD TARGETXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

O: OMG IM SORRY DEAD PERSONS

DEAD PERSONS: I TRUSTED YOU!

DEAD TARGET: :::swag:::
Link to comment
Share on other sites

I cannot give exact code at the moment but I can give a starting placeā€¦..

dim r as integer 'This is the range

r = spell(whateverspellnum).range

Select Case playerDirection

Ā  case dir_up 'only going to do up

Ā  Ā  Ā StartX = GetplayerX

Ā  Ā  Ā Endx = GetPlayerX 'Get variables that determine where the wave should hit. On the first loop just 1 tile

Ā  Ā  Ā For i = 1 to r 'This loops through the length of the wave

Ā  Ā  Ā  Ā  for z = startx to endx Ā  Ā  Ā  'This loops through the width of the wave

Ā  Ā  Ā  Ā  Ā  Ā check if tile is in bounds of the map

Ā  Ā  Ā  Ā  Ā  Ā CheckIfEnemy/Player/Etc is on Tile(z, getplayery - r)

Ā  Ā  Ā  Ā  Ā  Ā if so attack them

Ā  Ā  Ā  Ā  Ā  Ā expand startx and endx out 1

Ā  Ā  Ā  Ā  Ā  Ā so, startx = startx -1

Ā  Ā  Ā  Ā  Ā  Ā endx = endx + 1

Ā  Ā  Ā  Ā  Ā  Ā 'Now the width is larger and we are running the loop another tile out.

Ā  Ā  Ā next

Ā 'Repeat code for all directions replacing variables where needed, dont forget to send animations and shiz

end select

That is the concept, you would just have to turn it into legit code.
Link to comment
Share on other sites

[http://en.wikipedia.org/wiki/Wave_function](http://en.wikipedia.org/wiki/Wave_function)

[http://en.wikipedia.org/wiki/Trigonometric_functions](http://en.wikipedia.org/wiki/Trigonometric_functions)

You might want to read into the mathematics behind this if you actually want pixel based wave-spells.
Link to comment
Share on other sites

I think i got it..

First i need to copy how linear works.. thenĀ proceedĀ by adding another value , but i guess you need to use Loop like

If getplayerdir(index) = DIR_DOWN

For i = 1 to Range

Ā Ā Do While i <> Range

Ā  Ā  Ā  For x = 1 to LoopValue

Ā  Ā  Ā  Ā  Ā  Ā Call sendanimation(mapnum, animationnum, target.x + x, target.y + i)

Ā  Ā  Ā  Ā  Ā  Ā Call sendanimation(mapnum, animationnum, target.x - x, target.y + i)

Ā  Ā  Ā  Next

Ā  Ā  Ā  Ā LoopValue = LoopValue + 1

Ā  Ā  Loop

Next

End if

if i did it wrong, please correct me./
Link to comment
Share on other sites

  • 1 month later...
Sherwin, if you haven't already done this, try my code and tell me if it does what you want, just don't use it on the map bounds, I'm guessing it would cause errorsĀ  xP

```

'this is just for when the player is facing up
If getplayerdir(index) = DIR_UP Then
Dim distance As Long = 0
Dim isAlreadyHit As Boolean = False
For i = 1 To Range ' vertical
For a = 0 To distance
' middle and right part of the cone
If isNPCHere(Player.x + a, Player.y + i) Then
Call sendanimation(mapnum, animationnum, getplayerx(index) + a, getplayery(index) + i)
isAlreadyHit = True
End If
Next
distance = 0 'reset distance
For a = 0 To distance
' left part of the cone
If isAlreadyHit = False Then
If isNPCHere(Player.x - a, Player.y + i) Then
Call sendanimation(mapnum, animationnum, getplayerx(index) - a, getplayery(index) + i)
End If
End If
Next
distance = 0
isAlreadyHit = False
Next
End If

```
Link to comment
Share on other sites

Lolz something like this

Legend

X = bow

O = player animation

M = moronsnail running O.O

M

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxzxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

O

Could it done by many projectile using one bow?
Link to comment
Share on other sites

  • 2 weeks later...
> Lolz something like this
>
> Legend
>
> X = bow
>
> O = player animation
>
> M = moronsnail running O.O
>
> M
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxzxxxxxxxxxxxx
>
> Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> O
>
> Could it done by many projectile using one bow?

No.. Absolutely no.. YOU DON'T UNDERSTAND IT AT ALL :P

I just check to bump this topic

at Slashere.. i got some problems on that code.. i might send you a PM once i'm back at Grandma's house
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...