parent
b6d914151f
commit
6cfb40d642
@ -0,0 +1,7 @@ |
||||
#pragma once |
||||
#define GetInt(param) _GetInt(m,param,strategyNumber) |
||||
#define GetFloat(param) _GetFloat(m,param,strategyNumber) |
||||
#define GetString(param) _GetString(m,param,strategyNumber) |
||||
#define GetIntArr(param,ind) _GetInt(m,param,strategyNumber,ind) |
||||
#define GetFloatArr(param,ind) _GetFloat(m,param,strategyNumber,ind) |
||||
#define GetStringArr(param,ind) _GetString(m,param,strategyNumber,ind) |
@ -1,15 +1,41 @@ |
||||
#include "Monster.h" |
||||
#include "DEFINES.h" |
||||
#include "olcUTIL_DataFile.h" |
||||
|
||||
INCLUDE_DATA |
||||
|
||||
int Monster::STRATEGY::_GetInt(Monster&m,std::string param,int strategyNumber,int index){ |
||||
if(DATA["Monsters"][std::to_string(m.id)].HasProperty(param)){ |
||||
return DATA["Monsters"][std::to_string(m.id)][param].GetInt(index); |
||||
} else { |
||||
return DATA["MonsterStrategy"][std::to_string(strategyNumber)][param].GetInt(index); |
||||
} |
||||
} |
||||
float Monster::STRATEGY::_GetFloat(Monster&m,std::string param,int strategyNumber,int index){ |
||||
if(DATA["Monsters"][std::to_string(m.id)].HasProperty(param)){ |
||||
return DATA["Monsters"][std::to_string(m.id)][param].GetReal(index); |
||||
} else { |
||||
return DATA["MonsterStrategy"][std::to_string(strategyNumber)][param].GetReal(index); |
||||
} |
||||
} |
||||
std::string Monster::STRATEGY::_GetString(Monster&m,std::string param,int strategyNumber,int index){ |
||||
if(DATA["Monsters"][std::to_string(m.id)].HasProperty(param)){ |
||||
return DATA["Monsters"][std::to_string(m.id)][param].GetString(index); |
||||
} else { |
||||
return DATA["MonsterStrategy"][std::to_string(strategyNumber)][param].GetString(index); |
||||
} |
||||
} |
||||
|
||||
void Monster::STRATEGY::RUN_STRATEGY(Monster&m,float fElapsedTime){ |
||||
switch(m.strategy){ |
||||
case 0:{//Run Towards
|
||||
Monster::STRATEGY::RUN_TOWARDS(m,fElapsedTime); |
||||
Monster::STRATEGY::RUN_TOWARDS(m,fElapsedTime,m.strategy); |
||||
}break; |
||||
case 1:{//Shoot Afar
|
||||
Monster::STRATEGY::SHOOT_AFAR(m,fElapsedTime); |
||||
Monster::STRATEGY::SHOOT_AFAR(m,fElapsedTime,m.strategy); |
||||
}break; |
||||
case 2:{//Turret.
|
||||
Monster::STRATEGY::TURRET(m,fElapsedTime); |
||||
Monster::STRATEGY::TURRET(m,fElapsedTime,m.strategy); |
||||
}break; |
||||
} |
||||
} |
@ -1,5 +1,6 @@ |
||||
#include "Monster.h" |
||||
#include "MonsterStrategyHelpers.h" |
||||
|
||||
void Monster::STRATEGY::TURRET(Monster&m,float fElapsedTime){ |
||||
void Monster::STRATEGY::TURRET(Monster&m,float fElapsedTime,int strategyNumber){ |
||||
|
||||
} |
Loading…
Reference in new issue