70 lines
1.7 KiB
Text
70 lines
1.7 KiB
Text
|
#pragma once
|
||
|
#pragma pattern_limit 1500000
|
||
|
#include <std/sys.pat>
|
||
|
enum SkillType: u32{
|
||
|
};
|
||
|
struct header {
|
||
|
u8 unk[3];
|
||
|
bool flag;
|
||
|
u8 unk2;
|
||
|
u32 amountOfItems;
|
||
|
};
|
||
|
enum CharacterJob : u32 {
|
||
|
NULL,
|
||
|
Swordsman = 1, /// 01
|
||
|
Mage, /// 02
|
||
|
Thief, /// 03
|
||
|
Scout, /// 04
|
||
|
Warrior, /// 05
|
||
|
Knight, /// 06
|
||
|
Priest, /// 07
|
||
|
Wizard, /// 08
|
||
|
Rogue, /// 09
|
||
|
Ninja, /// 10
|
||
|
Gunner, /// 11
|
||
|
Archer, /// 12
|
||
|
Berserker, /// 13
|
||
|
Pladin, /// 14
|
||
|
Saint, /// 15
|
||
|
Warlock, /// 16
|
||
|
Knave, /// 17
|
||
|
Assassin, /// 18
|
||
|
Gunslinger, /// 19
|
||
|
Ranger, /// 20
|
||
|
Juggernaut, /// 21
|
||
|
Temple_Knight, /// 22
|
||
|
Exorcist, /// 23
|
||
|
Necromancer, /// 24
|
||
|
Raider, /// 25
|
||
|
Nightstalker, /// 26
|
||
|
Sharpshooter, /// 27
|
||
|
Beast_Keeper, /// 28
|
||
|
};
|
||
|
enum SkillSourceEntity : u32{
|
||
|
Player,S
|
||
|
Pet,
|
||
|
Mob,
|
||
|
Debuff, //Most likely Debuff/Buff Types
|
||
|
};
|
||
|
enum SkillBuffType : u32{
|
||
|
None,
|
||
|
Positive,
|
||
|
Negative
|
||
|
};
|
||
|
struct MagicData{
|
||
|
u32 Id;
|
||
|
u8 unk[24];
|
||
|
u32 IsPassive;
|
||
|
SkillBuffType unk2;
|
||
|
SkillType skillType;
|
||
|
SkillSourceEntity unk3;
|
||
|
CharacterJob requiredJob;
|
||
|
u8 unk4[12];
|
||
|
char name[20];
|
||
|
char description[255];
|
||
|
padding[0x5244-4-24-4-4-1-7-4-12-20-255];
|
||
|
};
|
||
|
std::print(std::format("{}",sizeof(MagicData)));
|
||
|
std::assert(sizeof(MagicData) == 0x5244, "Struct isn't the right size");
|
||
|
header header @ 0x00;
|
||
|
MagicData items[header.amountOfItems] @0x09;
|