/**
* One spell record in an ESF object
*/
struct ESF_Data : public Shared
{
int id;
std::string name;
std::string shout;
short icon;
short graphic;
short tp;
short sp;
unsigned char cast_time;
unsigned char unka;
ESF::Spell_Effect spell_effect;
unsigned char element;
unsigned char unkc;
unsigned char unkd;
ESF::Target target;
ESF::Type type;
unsigned char unke;
unsigned char unkf;
unsigned char unkg;
short mindam;
short maxdam;
unsigned char unkh;
unsigned char unki;
unsigned char unkj;
short hp;
unsigned char unkk;
unsigned char unkl;
unsigned char unkm;
unsigned char unkn;
unsigned char unko;
unsigned char unkp;
unsigned char unkq;
unsigned char unkr;
ESF_Data() : id(0), icon(0), graphic(0), tp(0), sp(0), cast_time(0), unka(0), spell_effect(ESF::Heal), element(0), unkc(0), unkd(0),
target(ESF::None), type(ESF::Normal), unke(0), unkf(0), unkg(0), mindam(0), maxdam(0), unkh(0), unki(0), unkj(0),
hp(0), unkk(0), unkl(0), unkm(0), unkn(0), unko(0), unkp(0), unkq(0), unkr(0) { }
SCRIPT_REGISTER_REF_DF(ESF_Data)
SCRIPT_REGISTER_VARIABLE("int", id);
SCRIPT_REGISTER_VARIABLE("string", name);
SCRIPT_REGISTER_VARIABLE("string", shout);
SCRIPT_REGISTER_VARIABLE("int16", icon);
SCRIPT_REGISTER_VARIABLE("int16", graphic);
SCRIPT_REGISTER_VARIABLE("int16", tp);
SCRIPT_REGISTER_VARIABLE("int16", sp);
SCRIPT_REGISTER_VARIABLE("uint8", cast_time);
SCRIPT_REGISTER_VARIABLE("uint8", unka);
SCRIPT_REGISTER_VARIABLE("ESF_Spell_Effect", spell_effect);
SCRIPT_REGISTER_VARIABLE("uint8", element);
SCRIPT_REGISTER_VARIABLE("uint8", unkc);
SCRIPT_REGISTER_VARIABLE("uint8", unkd);
SCRIPT_REGISTER_VARIABLE("ESF_Target", target);
SCRIPT_REGISTER_VARIABLE("ESF_Type", type);
SCRIPT_REGISTER_VARIABLE("uint8", unke);
SCRIPT_REGISTER_VARIABLE("uint8", unkf);
SCRIPT_REGISTER_VARIABLE("uint8", unkg);
SCRIPT_REGISTER_VARIABLE("int16", mindam);
SCRIPT_REGISTER_VARIABLE("int16", maxdam);
SCRIPT_REGISTER_VARIABLE("uint8", unkh);
SCRIPT_REGISTER_VARIABLE("uint8", unki);
SCRIPT_REGISTER_VARIABLE("uint8", unkj);
SCRIPT_REGISTER_VARIABLE("int16", hp);
SCRIPT_REGISTER_VARIABLE("uint8", unkk);
SCRIPT_REGISTER_VARIABLE("uint8", unkl);
SCRIPT_REGISTER_VARIABLE("uint8", unkm);
SCRIPT_REGISTER_VARIABLE("uint8", unkn);
SCRIPT_REGISTER_VARIABLE("uint8", unko);
SCRIPT_REGISTER_VARIABLE("uint8", unkp);
SCRIPT_REGISTER_VARIABLE("uint8", unkq);
SCRIPT_REGISTER_VARIABLE("uint8", unkr);
SCRIPT_REGISTER_END()
};