|
|
|
@ -21,12 +21,13 @@ INCLUDE_EMITTER_LIST |
|
|
|
|
//#define DEBUG_POS //Shows player position.
|
|
|
|
|
|
|
|
|
|
//192x192
|
|
|
|
|
const vi2d WINDOW_SIZE={24*15,24*10}; |
|
|
|
|
vi2d WINDOW_SIZE={24*15,24*10}; |
|
|
|
|
std::map<AnimationState,Animate2D::FrameSequence>ANIMATION_DATA; |
|
|
|
|
std::vector<Monster>MONSTER_LIST; |
|
|
|
|
std::vector<MonsterSpawner>SPAWNER_LIST; |
|
|
|
|
std::vector<std::shared_ptr<DamageNumber>>DAMAGENUMBER_LIST; |
|
|
|
|
std::vector<std::unique_ptr<Bullet>>BULLET_LIST; |
|
|
|
|
utils::datafile DATA; |
|
|
|
|
Crawler*game; |
|
|
|
|
|
|
|
|
|
Key Crawler::KEY_ABILITY1=Q; |
|
|
|
@ -38,18 +39,17 @@ Crawler::Crawler() |
|
|
|
|
{ |
|
|
|
|
sAppName = "Crawler Concept"; |
|
|
|
|
game=this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool Crawler::OnUserCreate(){ |
|
|
|
|
|
|
|
|
|
utils::datafile::Read(DATA,"assets/config/configuration.txt"); |
|
|
|
|
|
|
|
|
|
std::string CONFIG_PATH = GetString("config_path"); |
|
|
|
|
|
|
|
|
|
std::string GFX_CONFIG = CONFIG_PATH + GetString("gfx_config"); |
|
|
|
|
std::string CONFIG_PATH = "config_path"S; |
|
|
|
|
|
|
|
|
|
std::string GFX_CONFIG = CONFIG_PATH + "gfx_config"S; |
|
|
|
|
utils::datafile::Read(DATA,GFX_CONFIG); |
|
|
|
|
WINDOW_SIZE={"WINDOW_SIZE"i[0],"WINDOW_SIZE"i[1]}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool Crawler::OnUserCreate(){ |
|
|
|
|
InitializeLevel("assets/Campaigns/1_1.tmx",CAMPAIGN_1_1); |
|
|
|
|
|
|
|
|
|
player=std::make_unique<Warrior>(); |
|
|
|
@ -1100,18 +1100,35 @@ std::string Crawler::GetString(std::string key){ |
|
|
|
|
return DATA.GetProperty(key).GetString(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafilestringdata Crawler::GetStringList(std::string key){ |
|
|
|
|
return {DATA,key}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
int Crawler::GetInt(std::string key){ |
|
|
|
|
return DATA.GetProperty(key).GetInt(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafileintdata Crawler::GetIntList(std::string key){ |
|
|
|
|
return {DATA,key}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
float Crawler::GetFloat(std::string key){ |
|
|
|
|
return DATA.GetProperty(key).GetReal(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafilefloatdata Crawler::GetFloatList(std::string key){ |
|
|
|
|
return {DATA,key}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
double Crawler::GetDouble(std::string key){ |
|
|
|
|
return DATA.GetProperty(key).GetReal(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafiledoubledata Crawler::GetDoubleList(std::string key){ |
|
|
|
|
return {DATA,key}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int main() |
|
|
|
|
{ |
|
|
|
|
Crawler demo; |
|
|
|
@ -1119,4 +1136,36 @@ int main() |
|
|
|
|
demo.Start(); |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafilestringdata operator ""s(const char*key,std::size_t len){ |
|
|
|
|
return {DATA,std::string(key,len)}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafileintdata operator ""i(const char*key,std::size_t len){ |
|
|
|
|
return {DATA,std::string(key,len)}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafilefloatdata operator ""f(const char*key,std::size_t len){ |
|
|
|
|
return {DATA,std::string(key,len)}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
datafiledoubledata operator ""d(const char*key,std::size_t len){ |
|
|
|
|
return {DATA,std::string(key,len)}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
std::string operator ""S(const char*key,std::size_t len){ |
|
|
|
|
return DATA.GetProperty(std::string(key,len)).GetString(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
int operator ""I(const char*key,std::size_t len){ |
|
|
|
|
return DATA.GetProperty(std::string(key,len)).GetInt(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
float operator ""F(const char*key,std::size_t len){ |
|
|
|
|
return DATA.GetProperty(std::string(key,len)).GetReal(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
double operator ""D(const char*key,std::size_t len){ |
|
|
|
|
return DATA.GetProperty(std::string(key,len)).GetReal(); |
|
|
|
|
} |