Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "fe7.h"
- class MagicDataBase{
- protected:
- s8 base;
- s8 growth;
- public:
- int getBase(){
- return this->base;
- }
- int getGrowth(){
- return this->growth;
- }
- };
- class MagicDataFull : public MagicDataBase{
- protected:
- s8 max;
- s8 promo;
- public:
- int getMax(){
- return this->max;
- }
- int getPromo(){
- return this->promo;
- }
- };
- void charr(){SPACE(sizeof(MagicDataBase)*256);HOOKEND;}
- void clarr(){SPACE(sizeof(MagicDataFull)*256);HOOKEND;}
- MagicDataBase* characterMagic = (MagicDataBase*)&charr;
- MagicDataFull* classMagic = (MagicDataFull*)&clarr;
- #define __LEVEL_UP__
- #ifdef __LEVEL_UP__
- int (*levelstatup)(int percentchance) = (int (*)(int))(0x80295E0 | 1);
- #endif
- int getBaseMagic(Unit* arg){
- int ret = 0;
- MagicDataBase* p = characterMagic + arg->getCharID();
- ret += p->getBase();
- MagicDataFull* p2 = classMagic + arg->getClassID();
- ret += p2->getBase();
- if(ret > p2->getMax())
- return p2->getMax();
- return ret;
- }
- #ifdef __LEVEL_UP__
- int autolevel(Unit* arg){
- int add = 0;
- MagicDataBase* p = characterMagic + arg->getCharID();
- MagicDataFull* p2 = classMagic + arg->getClassID();
- int level = arg->getLevel();
- for(int i = 1; i < level; i++)
- add += levelstatup(p->getBase() + p2->getBase());
- return add;
- }
- int total(Unit* arg){
- int ret = getBaseMagic(arg) + autolevel(arg);
- MagicDataFull* p2 = classMagic + arg->getClassID();
- if(ret > p2->getMax())
- return p2->getMax();
- return ret;
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement