|
|
Search Tutorials
Code (cont.) Third step determines the direction, whilst only approximate the direction is often good enough for games and animation, the loop is very fast:Comment: determine the direction If ((dist_x>=0) and (dist_y>=0)) Set Variable: "direction" = 90*(dist_y/normalise) Else If ((dist_x<=0) and (dist_y>=0)) Set Variable: "direction" = -1*90*(dist_x/normalise) + 90 Else If ((dist_x<=0) and (dist_y<=0)) Set Variable: "direction" = -1*90*(dist_y/normalise) + 180 Else Set Variable: "direction" = 90*(dist_x/normalise) + 270 End If Rotate the object to the direction angle:
Comment: set direction of arrow
Set Property ("/arrow", Rotation) = direction
A final note with rotation: if the object being rotated shrinks after being rotated for a while (a bug in Flash4) you can slow down the rate of shrinkage by making the direction an int ie direction = int(direction) Finally the code here is used to calculate the movement of a projectile from the origin to the mouse. xmov and ymov values are given, however for a real situation these values would be multiplied by the speed of the bullet Comment: not required for this example Comment: but may be useful Comment: determine x and y movements for a bullet to go from origin to mouse Set Variable: "xmov" = dist_x/normalise Set Variable: "ymov" = dist_y/normalise
|
||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||
|