SuperSpaceInvaderTurboApoca.../headers/god.h
2022-01-06 17:27:07 +01:00

45 lines
714 B
C++

#ifndef GUARD_GOD_H
#define GUARD_GOD_H
#include "utils.h"
#include "invadersGrid.h"
enum class GodState{
NONE,
AWAKE,
WAIT,
RETRIEVE1,
RETRIEVE2,
THROW,
YOLO,
};
// I don't want to put that in config, I feel like it would be useless and overkill at this point
#define GOD_BENCH_SIZE 64
#define GOD_HAND_SIZE 64
#define GOD_HAND_DISTANCE 100
/*
* Hand position is determined
*/
class God{
public:
GodState state;
unsigned counter;
// we do not use a Position because it is used for pixel X and Y
unsigned thrownInvPosX;
unsigned thrownInvPosY;
InvaderType thrownInvType;
Position thrownVector;
Position thrownTransition;
Position getRightHandPos(unsigned screenWidth) const;
};
#endif