parent
a32366b8c8
commit
1811120eed
@ -1,17 +1,149 @@ |
||||
#pragma once |
||||
#include "SHNFileDecryptor.h" |
||||
#include "olcPGEX_TransformedView.h" |
||||
#include "Window.h" |
||||
|
||||
class FiestaOnlineEditor; |
||||
|
||||
struct MoneyDivision{ |
||||
int gem,gold,silver,copper; |
||||
}; |
||||
|
||||
class Money{ |
||||
uint32_t money; |
||||
public: |
||||
MoneyDivision GetMoneyDivisions(); |
||||
Money(); |
||||
Money(uint32_t money); |
||||
}; |
||||
|
||||
enum Class{ |
||||
FIGHTER=2, |
||||
CLEVERFIGHTER=3, |
||||
WARRIOR=4, |
||||
KNIGHT_GLADIATOR=5, |
||||
GLADIATOR=6, |
||||
KNIGHT=7, |
||||
CLIERIC=8, |
||||
HIGHCLERIC=9, |
||||
PALADIN=10, |
||||
GUARDIAN=11, |
||||
HOLYKNIGHT=12, |
||||
HOLYKNIGHT_GUARDIAN=13, |
||||
ARCHER=14, |
||||
HAWKARCHER=15, |
||||
SCOUT=16, |
||||
RANGER=17, |
||||
SHARPSHOOTER=18, |
||||
SHARPSHOOTER_RANGER=19, |
||||
MAGE=20, |
||||
WIZMAGE=21, |
||||
ENCHANTER=22, |
||||
WIZARD=23, |
||||
WARLOCK=24, |
||||
WIZARD_WARLOCK=25, |
||||
TRICKSTER=27, |
||||
GAMBIT=28, |
||||
RENEGADE=29, |
||||
REAPER=30, |
||||
SPECTRE=31, |
||||
SPECTRE_REAPER=32, |
||||
CRUSADER=33, |
||||
TEMPLAR=34, |
||||
}; |
||||
|
||||
enum EquipSlot{ |
||||
CONSUMABLE, |
||||
MINIPET, |
||||
UNKNOWN, |
||||
MINIPET2, |
||||
TAIL_ACC, |
||||
BACK_ACC, |
||||
WEAPONSKIN_1, //One-hand sword, mace, hammer
|
||||
WEAPONSKIN_2, //Shield, Bow
|
||||
WEAPONSKIN_3, //Staff, Wand, Two-hand, Axe, Crossbow, Claw, Dual Blades
|
||||
HAT_ACC, |
||||
FACE_ACC, |
||||
PIECE3_UPPER, |
||||
PIECE3_LOWER, |
||||
PIECE3_SHOES, |
||||
PIECE2_LOWERBODY_SHOES, |
||||
PIECE1, |
||||
SHOE, |
||||
LEGGING, |
||||
RING, |
||||
SHIELD, |
||||
BODY, |
||||
WEAPON1, // One-hand sword, mace, hammer
|
||||
WEAPON2, // Staff, Wand, Two-hand, Axe, Crossbow, Claw, Dual Blades
|
||||
WEAPON3, // Bow
|
||||
EARRING, |
||||
HAT, |
||||
NECKLACE, |
||||
MASK, |
||||
KQ_HAMMER, |
||||
EVENT_MASK, |
||||
UNKNOWN2, |
||||
AURA, |
||||
EVENT_SHIELD, |
||||
BIJOU_ACC, |
||||
}; |
||||
|
||||
enum ItemGrade{ |
||||
NORMAL, |
||||
GREEN, |
||||
RARE, |
||||
LEGENDARY, |
||||
SPECIAL, |
||||
SETITEM, |
||||
ULTIMATE, |
||||
}; |
||||
|
||||
class Item{ |
||||
public: |
||||
uint16_t id; |
||||
Renderable*icon; |
||||
std::string inxName; |
||||
std::string name; |
||||
std::string description; |
||||
EquipSlot slot; |
||||
uint32_t lvReq; |
||||
uint32_t iconIndex; |
||||
uint32_t subIconIndex; |
||||
uint32_t stackSize; |
||||
Class useClass; |
||||
Money buyPrice; |
||||
Money sellPrice; |
||||
ItemGrade grade; |
||||
Pixel borderCol; |
||||
Pixel blendCol; |
||||
uint32_t attackSpd; |
||||
uint32_t atk_min; |
||||
uint32_t atk_max; |
||||
uint32_t def; |
||||
uint32_t magAtk_min; |
||||
uint32_t magAtk_max; |
||||
uint32_t magDef; |
||||
uint32_t aim; |
||||
uint32_t eva; |
||||
uint32_t atkPctBonus; |
||||
uint32_t defPctBonus; |
||||
uint32_t magAtkPctBonus; |
||||
uint32_t magDefPctBonus; |
||||
uint32_t critRate; |
||||
uint32_t enhanceLimit; |
||||
uint32_t blockRate; |
||||
public: |
||||
Item(); |
||||
}; |
||||
|
||||
class ItemEditor:public Window{ |
||||
SHNFile ItemInfo,ItemInfoServer,ItemViewInfo; |
||||
vf2d pos={64,64}; |
||||
std::map<std::string,Renderable>imgLookup; |
||||
std::map<int,Item>itemList; |
||||
public: |
||||
ItemEditor(FiestaOnlineEditor*pge,std::string windowTitle,vi2d pos,vi2d size); |
||||
~ItemEditor(); |
||||
void Load(std::string basePath); |
||||
void Load(std::string basePath,std::string clientPath); |
||||
void Refresh(FiestaOnlineEditor*pge)override; |
||||
void Update(FiestaOnlineEditor*pge,float fElapsedTime)override; |
||||
void MouseFocus(FiestaOnlineEditor*pge)override; |
||||
|
Loading…
Reference in new issue