
Simple animation library made by gtbot (pm me if you need any help)
If you encounter any errors in Japanese, I ask that you send me your script so I may better streamline
the troubleshooting process.

View the provided example scripts to see how the animation works.
After applying the individual images/frames, you will not need to do any further work except
to enable attack animation via a function (there are two options for this too)

Animation works by going in the order you added them, so add them in sequentially.
Animation will continue until either the object is deleted or you force the animation to end.
If the object is deleted, you will have to reapply all the settings if you wish to recreate it.
ANIM_ATTACK and ANIM_ATTACKEND are not necessary unless you attempt to begin the animation.

Regular Movement assumes the sprite is moving right, and will flip it left or right based on direction.
If your move animation has only one direction (such as the included Koishi image), then you will only
use the ANIM_MOVE and ANIM_MOVEEND containers along with the ObjAnim_StartAnimationA1 function.
If your move animation has two seperate animations (such as the included Utsuho image), then you will be
using the ANIM_MOVE_RIGHT, ANIM_MOVE_LEFT, ANIM_MOVEEND_RIGHT, and ANIM_MOVEEND_LEFT containers. You will
be using the ObjAnim_StartAnimationA2 function.

Here is the list of functions and their explanations:

"Frames" refers to the individual images that the animation will sift through
For all of these functions, 
	-objID refers to the object id that will be animated
	-type refers to the nine animation containers:
		- ANIM_IDLE
		- ANIM_MOVE
		- ANIM_MOVEEND
		- ANIM_MOVE_RIGHT
		- ANIM_MOVE_LEFT
		- ANIM_MOVEEND_RIGHT
		- ANIM_MOVEEND_LEFT
		- ANIM_ATTACK
		- ANIM_ATTACKEND
	These are used to determine both settings and images for the different animations
	Please note that if your move animation only has animation for one direction, only use the ANIM_MOVE
		and ANIM_MOVEEND, and also use the function ObjAnim_StartAnimationA1.
	  If you will be using animations that have seperate animations for left and right movement,
		please use the ANIM_MOVE_RIGHT, ANIM_MOVE_LEFT, ANIM_MOVEEND_RIGHT, and ANIM_MOVEEND_LEFT 
		containers, and also use the function ObjAnim_StartAnimationA2.
		
		The reason for this seperation is that the two different StartAnimation functions operate
		differently, and will completely ignore the ANIM_MOVE_(direction) or ANIM_MOVE containers.
		
		If you are still confused, you may examine the two included samples to see what how it works.

---
ObjAnim_AddFrameA1(objID, type, left, top, right, bot)
	left, top, right, bot: (real numbers)
		Refers to the left, top, right, and bottom coordinates of the image, respectively

---
ObjAnim_AddFrameA2(objID, type, left, top, right, bot, xoff, yoff)
	left, top, right, bot: same as above
	xoff (real number):
		the amount in pixels that the image will be shifted in the x axis.
	yoff (real number):
		the amount in pixels that the image will be shifted in the y axis.
		
---
ObjAnim_SetLoopPointA1(objID, type, frame)
	frame: (index to array, integer)
		Determines which image to start back to after reaching the end of the animation
		Refer to each image as starting at 0; images are stored in the order you applied them
		
		If not set for ANIM_IDLE, 0 will be defaulted
		If not set for ANIM_MOVE or ANIM_ATTACK, an error will be raised
		ANIM_MOVEEND and ANIM_ATTACKEND do not use this value
		
---
ObjAnim_SetSpeedA1(objID, type, speed)
	speed: (real number)
		How many frames pass before moving on to the next image.
		Any number below 1 will frameskip some animation images.
		ANIM_MOVEEND and ANIM_ATTACKEN speed is taken from their normal animation containers
		
---
ObjAnim_ForceStop(objID)
		Stops the animating task. The last image before cancellation will remain on the object.
		
---
ObjAnim_FlipMoveImage(objID, cond)
		cond (boolean):
			Set to true if your image is left aligned, false if otherwise.
		If your movement animation faces the left rather than the right, you may set this function to 
		true so that it will align it properly.
		
---
ObjAnim_SetAttackA1(objID, status)
	status: (boolean)
		Starts or stops the attack animation.
		This function must be called when you want to start (true) and end (false) the animation
		
---
ObjAnim_SetAttackA2(objID, length)
	length: (integer)
		Begins the attack animation, and remains until the amount of frames (length) specified pass

---
ObjAnim_IsAttackPlaying(objID)
		Returns true if the attack animation is playing
		The attack animation ends once the animation status reaches the idle state (after ATTACKEND)
		
---
ObjAnim_StartAnimationA1(objID, float, floatspeed)
	float: (real number)
		The radius to determine how high and low the object will float
	floatspeed: (real number)
		How fast the floating will occur
		
		Starts the animation task. Use this function after you have set all the animations' frames and
		settings and your movement animation has only one direction (causing it to be flipped)

---
ObjAnim_StartAnimationA2(objID, float, floatspeed)
	float: (real number)
		The radius to determine how high and low the object will float
	floatspeed: (real number)
		How fast the floating will occur
		
		Starts the animation task. Use this function after you have set all the animations' frames and
		settings and your movement animation has two seperate animation directions.
	
	