Blame src/sprite.h

Ivan Mahonin 3f9996
#ifndef HELI_SPRITE_H
Ivan Mahonin 3f9996
#define HELI_SPRITE_H
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
#include "common.h"
Ivan Mahonin dba3fc
#include "animation.h"
Ivan Mahonin dba3fc
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
typedef struct _Sprite *Sprite;
Ivan Mahonin 44355f
typedef void (*SpriteCallback)(Sprite sprite);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
typedef enum _Collider {
Ivan Mahonin 3f9996
	COLLIDER_RECTANGLE,
Ivan Mahonin 3f9996
	COLLIDER_CIRCLE
Ivan Mahonin 3f9996
} Collider;
Ivan Mahonin 3f9996
Ivan Mahonin 8935bc
Ivan Mahonin e8cb52
Sprite createSprite(double x, double y, double width, double height);
Ivan Mahonin e8cb52
Sprite createSpriteEx(double x, double y, double width, double height, Animation animation);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
void spriteDestroy(Sprite sprite);
Ivan Mahonin 8535a3
void spriteDestroyTimer(Sprite sprite, double lifetime);
Ivan Mahonin 3f9996
Ivan Mahonin 53e18e
Sprite spriteClone(Sprite sprite);
Ivan Mahonin 53e18e
Ivan Mahonin 3f9996
double spriteGetX(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetX(Sprite sprite, double x);
Ivan Mahonin 3f9996
double spriteGetY(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetY(Sprite sprite, double y);
Ivan Mahonin f80a0a
void spriteSetXY(Sprite sprite, double x, double y);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetVelocityX(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetVelocityX(Sprite sprite, double x);
Ivan Mahonin 3f9996
double spriteGetVelocityY(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetVelocityY(Sprite sprite, double y);
Ivan Mahonin f80a0a
void spriteSetVelocityXY(Sprite sprite, double x, double y);
Ivan Mahonin f80a0a
Ivan Mahonin f80a0a
double spriteGetAccelerationX(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetAccelerationX(Sprite sprite, double x);
Ivan Mahonin f80a0a
double spriteGetAccelerationY(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetAccelerationY(Sprite sprite, double y);
Ivan Mahonin f80a0a
void spriteSetAccelerationXY(Sprite sprite, double x, double y);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetScale(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetScale(Sprite sprite, double scale);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetWidth(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetWidth(Sprite sprite, double width);
Ivan Mahonin 3f9996
double spriteGetHeight(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetHeight(Sprite sprite, double height);
Ivan Mahonin 714a45
void spriteSetSize(Sprite sprite, double width, double height);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
int spriteGetRotateToDirection(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetRotateToDirection(Sprite sprite, int rotateToDirection);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetRotation(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetRotation(Sprite sprite, double rotation);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetRotationSpeed(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetRotationSpeed(Sprite sprite, double rotationSpeed);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
int spriteGetMirrorX(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetMirrorX(Sprite sprite, int mirrorX);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
int spriteGetMirrorY(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetMirrorY(Sprite sprite, int mirrorY);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetDepth(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetDepth(Sprite sprite, double depth);
Ivan Mahonin 3f9996
Ivan Mahonin 8535a3
int spriteGetVisible(Sprite sprite);
Ivan Mahonin 8535a3
void spriteSetVisible(Sprite sprite, int visible);
Ivan Mahonin 3f9996
Ivan Mahonin 6eadb0
int spriteGetFrozen(Sprite sprite);
Ivan Mahonin 6eadb0
void spriteSetFrozen(Sprite sprite, int frozen);
Ivan Mahonin 6eadb0
Ivan Mahonin 3f9996
int spriteGetDebug(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetDebug(Sprite sprite, int debug);
Ivan Mahonin 3f9996
Ivan Mahonin f80a0a
int spriteOverlap(Sprite a, Sprite b);
Ivan Mahonin f80a0a
int spriteCollide(Sprite a, Sprite b);
Ivan Mahonin 53e18e
int spriteIsPointInside(Sprite sprite, double x, double y);
Ivan Mahonin 53e18e
Ivan Mahonin f80a0a
double spriteGetTouchWeight(Sprite sprite);
Ivan Mahonin f80a0a
double spriteGetTouchWeightX(Sprite sprite);
Ivan Mahonin f80a0a
double spriteGetTouchWeightY(Sprite sprite);
Ivan Mahonin f80a0a
double spriteGetTouchFriction(Sprite sprite);
Ivan Mahonin f80a0a
void spriteResetTouch(Sprite sprite);
Ivan Mahonin f80a0a
Ivan Mahonin 3f9996
double spriteGetBounciness(Sprite sprite);
Ivan Mahonin 3f9996
void spriteSetBounciness(Sprite sprite, double bounciness);
Ivan Mahonin 44355f
double spriteGetBouncinessThreshold(Sprite sprite);
Ivan Mahonin 44355f
void spriteSetBouncinessThreshold(Sprite sprite, double bouncinessThreshold);
Ivan Mahonin 44355f
Ivan Mahonin f80a0a
double spriteGetFriction(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetFriction(Sprite sprite, double friction);
Ivan Mahonin f80a0a
double spriteGetAirFriction(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetAirFriction(Sprite sprite, double friction);
Ivan Mahonin f80a0a
Ivan Mahonin f80a0a
int spriteGetMassLevel(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetMassLevel(Sprite sprite, int massLevel);
Ivan Mahonin 44355f
Ivan Mahonin f80a0a
double spriteGetColliderSensitiveDistance(Sprite sprite);
Ivan Mahonin f80a0a
void spriteSetColliderSensitiveDistance(Sprite sprite, double distance);
Ivan Mahonin 3f9996
Ivan Mahonin f8c1ea
void spriteSetCollider(Sprite sprite, Collider type, double xOffset, double yOffset, double rotationOffset);
Ivan Mahonin f8c1ea
void spriteSetColliderCircle(Sprite sprite, double xOffset, double yOffset, double radius);
Ivan Mahonin f8c1ea
void spriteSetColliderRectangle(
Ivan Mahonin f8c1ea
	Sprite sprite, double xOffset, double yOffset, double rotationOffset,
Ivan Mahonin f8c1ea
	double width, double height, double cornersRadius );
Ivan Mahonin f8c1ea
void spriteSetColliderEx(
Ivan Mahonin f8c1ea
	Sprite sprite, Collider type,
Ivan Mahonin f8c1ea
	double xOffset, double yOffset, double rotationOffset,
Ivan Mahonin f8c1ea
	double width, double height, double radius);
Ivan Mahonin 3f9996
Ivan Mahonin f8dca4
Animation spriteGetAnimation(Sprite sprite);
Ivan Mahonin dba3fc
void spriteSetAnimation(Sprite sprite, Animation animation);
Ivan Mahonin 8935bc
void spriteSetNoAnimation(Sprite sprite);
Ivan Mahonin dba3fc
Ivan Mahonin 83acad
unsigned int spriteGetShapeColor(Sprite sprite);
Ivan Mahonin d4e89f
void spriteSetShapeColor(Sprite sprite, unsigned int colorCode);
Ivan Mahonin 83acad
Ivan Mahonin 83acad
unsigned int spriteGetTintColor(Sprite sprite);
Ivan Mahonin d4e89f
void spriteSetTintColor(Sprite sprite, unsigned int colorCode);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
void spriteSetSpeedAndDirection(Sprite sprite, double speed, double angle);
Ivan Mahonin 3f9996
double spriteGetSpeed(Sprite sprite);
Ivan Mahonin 3f9996
double spriteGetDirection(Sprite sprite);
Ivan Mahonin 3f9996
void spritePointTo(Sprite sprite, double x, double y);
Ivan Mahonin 909bc2
void spriteMoveBy(Sprite sprite, double dx, double dy);
Ivan Mahonin 909bc2
void spriteMoveToDirection(Sprite sprite, double distance, double angle);
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
double spriteGetScaledWidth(Sprite sprite);
Ivan Mahonin 3f9996
double spriteGetScaledHeight(Sprite sprite);
Ivan Mahonin 3f9996
Ivan Mahonin 44355f
int spriteGetUserTag(Sprite sprite);
Ivan Mahonin 44355f
void spriteSetUserTag(Sprite sprite, int tag);
Ivan Mahonin 44355f
const char* spriteGetUserText(Sprite sprite);
Ivan Mahonin 44355f
void spriteSetUserText(Sprite sprite, const char *text);
Ivan Mahonin 44355f
void* spriteGetUserData(Sprite sprite);
Ivan Mahonin 44355f
void spriteSetUserData(Sprite sprite, void *data);
Ivan Mahonin 44355f
Ivan Mahonin 44355f
void spriteSetDestroy(Sprite sprite, SpriteCallback destroy);
Ivan Mahonin 44355f
Ivan Mahonin 1024d1
int spriteUpdate(Sprite sprite, double time);
Ivan Mahonin 6eadb0
void spriteDraw(Sprite sprite);
Ivan Mahonin 6eadb0
Ivan Mahonin 1024d1
int spritesGetCount();
Ivan Mahonin 1024d1
Sprite spritesGet(int i);
Ivan Mahonin 1024d1
Ivan Mahonin 1024d1
Ivan Mahonin 3f9996
Ivan Mahonin 3f9996
#endif