The open source repository for the action RPG game in development by Sig Productions titled 'Adventures in Lestoria'! https://forums.lestoria.net
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AdventuresInLestoria/Crawler/DEFINES.h

34 lines
1.7 KiB

#pragma once
#define INCLUDE_ANIMATION_DATA extern std::map<AnimationState,Animate2D::FrameSequence>ANIMATION_DATA;
#define INCLUDE_MONSTER_LIST extern std::vector<Monster>MONSTER_LIST;
#define INCLUDE_SPAWNER_LIST extern std::vector<MonsterSpawner>SPAWNER_LIST;
#define INCLUDE_DAMAGENUMBER_LIST extern std::vector<DamageNumber>DAMAGENUMBER_LIST;
#define INCLUDE_game extern Crawler*game;
#define INCLUDE_MONSTER_DATA extern std::map<MonsterName,MonsterData>MONSTER_DATA;
#define INCLUDE_BULLET_LIST extern std::vector<std::unique_ptr<Bullet>>BULLET_LIST;
#define INCLUDE_PARTICLE_LIST extern std::vector<Particle>PARTICLE_LIST;
#define INCLUDE_EMITTER_LIST extern std::vector<std::unique_ptr<Emitter>>EMITTER_LIST;
#define ACCESS_PLAYER Player*p=game->GetPlayer();
#define INFINITE 999999
#define SETUP_CLASS(class) \
class::class(){} \
class::class(Player*player) \
:Player::Player(player){} \
Class class::GetClass(){return cl;} \
std::string class::GetClassName(){return name;} \
Ability&class::GetRightClickAbility(){return rightClickAbility;}; \
Ability&class::GetAbility1(){return ability1;}; \
Ability&class::GetAbility2(){return ability2;}; \
Ability&class::GetAbility3(){return ability3;}; \
Ability&class::GetAbility4(){return ability4;}; \
AnimationState&class::GetWalkNAnimation(){return walk_n;}; \
AnimationState&class::GetWalkEAnimation(){return walk_e;}; \
AnimationState&class::GetWalkSAnimation(){return walk_s;}; \
AnimationState&class::GetWalkWAnimation(){return walk_w;}; \
AnimationState&class::GetIdleNAnimation(){return idle_n;}; \
AnimationState&class::GetIdleEAnimation(){return idle_e;}; \
AnimationState&class::GetIdleSAnimation(){return idle_s;}; \
AnimationState&class::GetIdleWAnimation(){return idle_w;};