34 lines
908 B
C++
34 lines
908 B
C++
#pragma once
|
|
|
|
#include "mt/macro.h"
|
|
#include "mtb/BattleHeroGrow.h"
|
|
|
|
namespace mt
|
|
{
|
|
|
|
DECLARE_ID_TABLE(BattleHeroGrow, mtb::BattleHeroGrow,
|
|
"battleHeroGrow@battleHeroGrow.json",
|
|
"id")
|
|
public:
|
|
|
|
void Init1();
|
|
void Init2();
|
|
|
|
const BattleHeroGrow* GetNextMeta() const;
|
|
bool IsFullLevel() const;
|
|
std::shared_ptr<std::vector<std::tuple<int, float>>> GetLevelAttrs() const;
|
|
std::shared_ptr<std::vector<int>> GetEquipEffects() const;
|
|
int GetSkillEffect() const;
|
|
|
|
static const BattleHeroGrow* GetByHeroIdLevel(int hero_id, int level);
|
|
|
|
private:
|
|
const BattleHeroGrow* next_meta_ = nullptr;
|
|
std::shared_ptr<std::vector<std::tuple<int, float>>> attrs_;
|
|
std::shared_ptr<std::vector<int>> effects_;
|
|
|
|
static std::map<long long, const BattleHeroGrow*> level_hash_;
|
|
};
|
|
|
|
}
|