mirror of
https://github.com/OpenFusionProject/OpenFusion.git
synced 2026-02-23 11:20:05 +00:00
Cleaned up item drop logic.
* Replaced bad exception logic with C-style error returns in ItemManager * Removed unnecessary instances of objects being passed by value * Fixed whitespace problems * Added new config options to the default config.ini * Updated tabledata reference
This commit is contained in:
@@ -29,11 +29,11 @@ namespace ItemManager {
|
||||
extern std::map<std::pair<int32_t, int32_t>, Item> ItemData; // <id, type> -> data
|
||||
extern std::map<int32_t, std::vector<VendorListing>> VendorTables;
|
||||
extern std::map<int32_t, CrocPotEntry> CrocPotTable; // level gap -> entry
|
||||
extern std::map<int32_t, std::vector<int>> RarityRatios;
|
||||
extern std::map<int32_t, std::vector<int>> RarityRatios;
|
||||
extern std::map<int32_t, Crate> Crates;
|
||||
// pair <Itemset, Rarity> -> vector of pointers (map iterators) to records in ItemData (it looks a lot scarier than it is)
|
||||
extern std::map<std::pair<int32_t, int32_t>,
|
||||
std::vector<std::map<std::pair<int32_t, int32_t>, Item>::iterator>> CrateItems;
|
||||
extern std::map<std::pair<int32_t, int32_t>,
|
||||
std::vector<std::map<std::pair<int32_t, int32_t>, Item>::iterator>> CrateItems;
|
||||
|
||||
void init();
|
||||
|
||||
@@ -56,12 +56,9 @@ namespace ItemManager {
|
||||
void chestOpenHandler(CNSocket* sock, CNPacketData* data);
|
||||
|
||||
// crate opening logic with all helper functions
|
||||
sItemBase openCrate(int crateId, int playerGender);
|
||||
Crate getCrate(int crateId);
|
||||
int getItemSetId(Crate crate, int crateId);
|
||||
int getRarity(Crate crate, int itemSetId);
|
||||
sItemBase getCrateItem(int itemSetId, int rarity, int playerGender);
|
||||
void throwError(int ignore);
|
||||
int getItemSetId(Crate& crate, int crateId);
|
||||
int getRarity(Crate& crate, int itemSetId);
|
||||
int getCrateItem(sItemBase& reward, int itemSetId, int rarity, int playerGender);
|
||||
|
||||
int findFreeSlot(Player *plr);
|
||||
Item* getItemData(int32_t id, int32_t type);
|
||||
|
||||
Reference in New Issue
Block a user