[refactor] SkillData additions for buffs

This commit is contained in:
gsemaj
2022-05-16 16:47:30 -04:00
committed by gsemaj
parent 6d760f5bce
commit 3b6b61d087
11 changed files with 148 additions and 62 deletions

View File

@@ -3,16 +3,46 @@
#include "core/Core.hpp"
#include "Combat.hpp"
enum class SkillEffectTarget {
POINT = 1,
SELF = 2,
CONE = 3,
WEAPON = 4,
AREA_SELF = 5,
AREA_TARGET = 6
};
enum class SkillTargetType {
MOBS = 1,
SELF = 2,
GROUP = 3
};
enum class SkillDrainType {
ACTIVE = 1,
PASSIVE = 2
};
struct SkillData {
int skillType;
int targetType;
int drainType;
SkillEffectTarget effectTarget;
int effectType; // always 1?
SkillTargetType targetType;
SkillDrainType drainType;
int effectArea;
int batteryUse[4];
int durationTime[4];
int powerIntensity[4];
int valueTypes[3];
int values[3][4];
};
namespace Abilities {
extern std::map<int32_t, SkillData> SkillTable;
std::vector<EntityRef> matchTargets(SkillData*, int, int32_t*);
void applyAbility(SkillData*, EntityRef, std::vector<EntityRef>);
void init();
}