While Work on this project has been slowed down a bit there is still progress being made. For some objects we are waiting for Qt 5.0 to come out so that we can use some of the newer features. For older objects there will only need to have small update to build with Qt 5.0. ( this is basicly Done already and it all works under Qt5 currently)
Some FF7Tk Related News:
Updated: CharEditor, mostly completed.needs the layout optimized before i am ready to use it in black chocobo.(its to large)
Updated: All Static Data Classes Have Been updated.
New: ChocoboEditor Widget to Edit your Chocobo Stable.
Some Data on the Objects of Use: (start of Documentation)
Please Note: Requirements for items only count the files from the Tk that need inclusion in your project. All objects require Assorted Items from the Qt Toolkit.
FF7Text - Convert Text To/ From FF7 Format Requirements for use: None
Functions:
void FF7Text::init(bool ja)Sets What Char Table will be retruned.
true: for Japanese Char Table
false: for all others.
QString FF7Text::toPC(QByteArray text)Converts text into a standard QString decoded from ff7text format
QByteArray FF7Test::toFF7(QString text)Converts text into ff7 text format
FF7Save - The Core Object for Working with FF7 Save Games.Requirements for use:
FF7Save_Const.h - All consts placed here
FF7Save_Types.h - All Custom Types for this class here.
FF7Text.h - Text Conversion Object
Loading and Saving Functions
bool loadFile(const QString &fileName)bool saveFile(const QString &fileName)Load or Save fileName (type is auto detected)
bool exportPC(const QString &fileName)bool exportVMC(const QString &fileName)bool exportDEX(const QString &fileName)bool exportVGS(const QString &fileName)Export data as that type to fileName , all 15 slots
bool exportPSX(int s,const QString &fileName)Exports Slot s to raw PSX format file name fileName. (even if more then one data block)
bool exportCharacter(int s,int char_num,QString fileName)Exports Character from slot s in character slot char_num to fileName
bool importCharacter(int s,int char_num,QByteArray new_char)Imports new_char (raw 132 byte array) to slot s in character slot char_num.
All Above Functions Return 0 if Fails to load/save fileName
void importPSX(int s,const QString &fileName)void importPSV(int s,const QString &fileName)Imports data from fileName to slot s
void clearSlot(int s)clears data in slot s (fills with 0's)
void copySlot(int s)saves slot s into a buffer
void pasteSlot(int s)pastes save stored in buffer to slot s
void newGame(int s,QString fileName="")Puts default Save in slot s if no fileName is provided.
if a fileName is provided it MUST BE PSX Format data.
void newGamePlus(int s,QString CharFileName,QString fileName="")Creates a new Game + in slot s. exports cait/ vincent to CharFileName.
if no fileName is provided will use default save to make the new game +
if a fileName is provided it will be used to create the new game + it MUST BE PSX Format.
File Info Functions (the headers code says it all)
int lenFile(void);//Return File length.
int lenFileHeader(void);//Return File Header length
int lenFileFooter(void);//Return File Footer length
int lenCoreSave(void);//Return Slot length (data portion)
int lenSlotHeader(void);//Return slot header length
int lenSlotFooter(void);//Return slot footer length
int lenSlot(void);//Return Slot length
int numberOfSlots(void);//Return number of slots in the file_footer_dex
QString type(void);// Returns the file type loaded.
bool isFF7(int s);//valid ff7 slot?
bool isPAL(int s);//PAL SLOT?
bool isNTSC(int s);//NTSC SLOT??
bool isJPN(int s);//is a Japanese File
QString region(int s);// region string of slot s
//Set Needed Info Stuffs
void setType(QString);//allows for slot change.
void setRegion(int s ,QString region);
QByteArray slot_header(int s); //return slot header.
quint8 psxBlockType(int s);//mask of psx slot (used by index)
quint8 psxBlockNext(int s);// if using more then one block return location of next block
quint8 psxBlockSize(int s);//how many blocks save uses.
void fix_pc_bytemask(int s);// update so last slot is shown selected on load (must be public to set to currently viewed slot).
FF7Char - Info About Characters.Requirements : xpm files in icons/Char_Icons
Functions
quint8 id(int who);return who's id
int numberOfWeapons(int who);return the number of weapons who can use
int weaponOffset(int who);return the starting item # of who's weapons
QString defaultName(int who);return whos DefaultName (translated)
QImage image(int who);return QImage Version of who avatar picture.
QIcon icon(int who);return QIcon Version of who avatar picture.
QPixmap pixmap(int who);return QPixmap Version of who avatar picture.
QStringList limits(int who);Return a list of whos limits (translated)
quint32 totalExpForLevel(int who,int level);return how much xp who needs to reach what level
quint32 tnlForLevel(int who,int level);returns starting tnl for who at what level
int statGain(int who,int stat,int stat_amout,int next_lvl);return amount gained in stat by who in what stat , needs to know the current stat_amount , and next_level of who
stat table 0 str, 1 vit, 2 mag, 3 spi, 4 dex, 5 luck,6 hp,7mp
usefull for when leveling up or down (not so much down )
FF7Item - Info About FF7 ItemsRequirements: xpm files in icons/Item_Icons/
Functions:
General Info about Item
QString name(int id);return translated Name if item id
QString desc(int id);return translated description of item id
qint8 type(int id);return item id's type
type : 1-item, 2-wep_cloud, 3-wep_barret, 4-wep_tifa, 5-wep_red, 6-wep_aerith, 7-wep_cid, 8-wep_yuffie, 9-wep_cait, 10-wep_vincent, 11-armor, 12-accessory
qint8 materisSlots(int id);return number of materia slots item id has
qint8 linkedSlots(int id);return number of linked pairs of materia slots item id has
qint8 materiaGrowthRate(int id);Return materia growth rate for item id.
Status Info For Items
qint8 statHP(int id);Return Bonus item id provides for Hp
qint8 statMP(int id);Return Bonus item id provides for Mp
qint8 statSTR(int id);Return Bonus item id provides for strength
qint8 statVIT(int id);Return Bonus item id provides for vitality
qint8 statDEX(int id);Return Bonus item id provides for dexterity
qint8 statLCK(int id);Return Bonus item id provides for luck
qint8 statMAG(int id);Return Bonus item id provides for magic
qint8 statSPI(int id);Return Bonus item id provides for spirit
Elemental Functions
qint8 elementRestoration(int id);qint8 elementFire(int id);qint8 elementCold(int id);qint8 elementLightning(int id);qint8 elementEarth(int id);qint8 elementWind(int id);qint8 elementWater(int id);qint8 elementGravity(int id);qint8 elementHoly(int id);qint8 elementPoison(int id);qint8 elementCut(int id);qint8 elementShoot(int id);qint8 elementPunch(int id);qint8 elementHit(int id);Above Functions return the kind of effect item id has for each element
for all elemental functions
-3: Absorb
-2: Nullify
-1: Halve
0: No Effect
+1: damage
//Status Functions
qint8 statusDeath(int id);qint8 statusSlowNumb(int id);qint8 statusDeathSentence(int id);qint8 statusParalysis(int id);qint8 statusPetrify(int id);qint8 statusSilence(int id);qint8 statusSleep(int id);qint8 statusConfusion(int id);qint8 statusBerserk(int id);qint8 statusFrog(int id);qint8 statusMini(int id);qint8 statusPoison(int id);qint8 statusFury(int id);qint8 statusSadness(int id);qint8 statusDarkness(int id);qint8 statusHaste(int id);qint8 statusSlow(int id);qint8 statusStop(int id);qint8 statusBarrier(int id);qint8 statusMagicBarrier(int id);qint8 statusReflect(int id);qint8 statusShield(int id);qint8 statusRegen(int id);qint8 statusResist(int id);Above Functions return the kind of effect item id has for each element
all Status Effects
-2: Protect
-1: Remove
0: No Effect
+1: Infilict
+2: Auto SelfCast
//Pictures
QImage image(int id);return QImage of Items in game icon
QImage imageMateriaSlotNoGrowth(void);return QImage of in game Materia slot (no growth type)
QImage imageMateriaSlot(void);return QImage of in game Materia slot (no growth)
QImage imageMateriaLink(void);return QImage of in game Materia link
//StyleSheet Equilvents (ONLY QButtons)
QString styleMateriaSlotNoGrowth(void);Return Style Sheet version of Custom No Growth Slot(only use on a QPushButton)
QString styleMateriaSlot(void);Return Style Sheet version of Custom Growth Slot(only use on a QPushButton)
QString styleMateriaLink(void);Style Sheet version of Custom Materia Link (only use on a QLabel)