mirror of
https://github.com/galaxyhaxz/devilution
synced 2025-02-22 12:34:59 +00:00
139 lines
5.2 KiB
C
139 lines
5.2 KiB
C
//HEADER_GOES_HERE
|
|
#ifndef __ITEMS_H__
|
|
#define __ITEMS_H__
|
|
|
|
extern int itemactive[MAXITEMS];
|
|
extern int uitemflag;
|
|
extern int itemavail[MAXITEMS];
|
|
extern ItemStruct curruitem;
|
|
extern ItemGetRecordStruct itemrecord[MAXITEMS];
|
|
extern ItemStruct item[MAXITEMS+1];
|
|
extern BOOL itemhold[3][3];
|
|
extern unsigned char *itemanims[35];
|
|
extern int UniqueItemFlag[128];
|
|
extern int numitems;
|
|
extern int gnNumGetRecords;
|
|
|
|
void InitItemGFX();
|
|
BOOL ItemPlace(int xp, int yp);
|
|
void AddInitItems();
|
|
void InitItems();
|
|
void CalcPlrItemVals(int p, BOOL Loadgfx);
|
|
void CalcPlrScrolls(int p);
|
|
void CalcPlrStaff(int p);
|
|
void CalcSelfItems(int pnum);
|
|
void CalcPlrItemMin(int pnum);
|
|
BOOL ItemMinStats(PlayerStruct *p, ItemStruct *x);
|
|
void CalcPlrBookVals(int p);
|
|
void CalcPlrInv(int p, BOOL Loadgfx);
|
|
void SetPlrHandItem(ItemStruct *h, int idata);
|
|
void GetPlrHandSeed(ItemStruct *h);
|
|
void GetGoldSeed(int pnum, ItemStruct *h);
|
|
void SetPlrHandSeed(ItemStruct *h, int iseed);
|
|
void SetPlrHandGoldCurs(ItemStruct *h);
|
|
void CreatePlrItems(int p);
|
|
BOOL ItemSpaceOk(int i, int j);
|
|
BOOL GetItemSpace(int x, int y, char inum);
|
|
void GetSuperItemSpace(int x, int y, char inum);
|
|
void GetSuperItemLoc(int x, int y, int &xx, int &yy);
|
|
void CalcItemValue(int i);
|
|
void GetBookSpell(int i, int lvl);
|
|
void GetStaffPower(int i, int lvl, int bs, BOOL onlygood);
|
|
void GetStaffSpell(int i, int lvl, BOOL onlygood);
|
|
void GetItemAttrs(int i, int idata, int lvl);
|
|
int RndPL(int param1, int param2);
|
|
int PLVal(int pv, int p1, int p2, int minv, int maxv);
|
|
void SaveItemPower(int i, int power, int param1, int param2, int minval, int maxval, int multval);
|
|
void GetItemPower(int i, int minlvl, int maxlvl, long flgs, BOOL onlygood);
|
|
void GetItemBonus(int i, int idata, int minlvl, int maxlvl, BOOL onlygood);
|
|
void SetupItem(int i);
|
|
int RndItem(int m);
|
|
int RndUItem(int m);
|
|
int RndAllItems();
|
|
int RndTypeItems(int itype, int imid);
|
|
int CheckUnique(int i, int lvl, int uper, BOOL recreate);
|
|
void GetUniqueItem(int i, int uid);
|
|
void SpawnUnique(int uid, int x, int y);
|
|
void ItemRndDur(int ii);
|
|
void SetupAllItems(int ii, int idx, int iseed, int lvl, int uper, BOOL onlygood, BOOL recreate, BOOL pregen);
|
|
void SpawnItem(int m, int x, int y, BOOL sendmsg);
|
|
void CreateItem(int uid, int x, int y);
|
|
void CreateRndItem(int x, int y, BOOL onlygood, BOOL sendmsg, BOOL delta);
|
|
void SetupAllUseful(int ii, int iseed, int lvl);
|
|
void CreateRndUseful(int pnum, int x, int y, BOOL sendmsg);
|
|
void CreateTypeItem(int x, int y, BOOL onlygood, int itype, int imisc, BOOL sendmsg, BOOL delta);
|
|
void RecreateItem(int ii, int idx, WORD icreateinfo, int iseed, int ivalue);
|
|
void RecreateEar(int ii, WORD ic, int iseed, BOOL Id, int dur, int mdur, int ch, int mch, int ivalue, int ibuff);
|
|
void SpawnQuestItem(int itemid, int x, int y, int randarea, int selflag);
|
|
void SpawnRock();
|
|
void RespawnItem(int i, BOOL FlipFlag);
|
|
void DeleteItem(int ii, int i);
|
|
void ItemDoppel();
|
|
void ProcessItems();
|
|
void FreeItemGFX();
|
|
void GetItemFrm(int i);
|
|
void GetItemStr(int i);
|
|
void CheckIdentify(int pnum, int cii);
|
|
void DoRepair(int pnum, int cii);
|
|
void RepairItem(ItemStruct *i, int lvl);
|
|
void DoRecharge(int pnum, int cii);
|
|
void RechargeItem(ItemStruct *i, int r);
|
|
void PrintItemOil(char IDidx);
|
|
void PrintItemPower(char plidx, const ItemStruct *x);
|
|
void DrawUTextBack();
|
|
void PrintUString(int x, int y, int cjustflag, char *str, int col);
|
|
void DrawULine(int y);
|
|
void DrawUniqueInfo();
|
|
void PrintItemMisc(ItemStruct *x);
|
|
void PrintItemDetails(ItemStruct *x);
|
|
void PrintItemDur(ItemStruct *x);
|
|
void UseItem(int p, int Mid, int spl);
|
|
BOOL StoreStatOk(ItemStruct *h);
|
|
BOOL SmithItemOk(int i);
|
|
int RndSmithItem(int lvl);
|
|
void BubbleSwapItem(ItemStruct *a, ItemStruct *b);
|
|
void SortSmith();
|
|
void SpawnSmith(int lvl);
|
|
BOOL PremiumItemOk(int i);
|
|
int RndPremiumItem(int minlvl, int maxlvl);
|
|
void SpawnOnePremium(int i, int plvl);
|
|
void SpawnPremium(int lvl);
|
|
BOOL WitchItemOk(int i);
|
|
int RndWitchItem(int lvl);
|
|
void SortWitch();
|
|
void WitchBookLevel(int ii);
|
|
void SpawnWitch(int lvl);
|
|
int RndBoyItem(int lvl);
|
|
void SpawnBoy(int lvl);
|
|
BOOL HealerItemOk(int i);
|
|
int RndHealerItem(int lvl);
|
|
void SortHealer();
|
|
void SpawnHealer(int lvl);
|
|
void SpawnStoreGold();
|
|
void RecreateSmithItem(int ii, int idx, int lvl, int iseed);
|
|
void RecreatePremiumItem(int ii, int idx, int plvl, int iseed);
|
|
void RecreateBoyItem(int ii, int idx, int lvl, int iseed);
|
|
void RecreateWitchItem(int ii, int idx, int lvl, int iseed);
|
|
void RecreateHealerItem(int ii, int idx, int lvl, int iseed);
|
|
void RecreateTownItem(int ii, int idx, WORD icreateinfo, int iseed, int ivalue);
|
|
void RecalcStoreStats();
|
|
int ItemNoFlippy();
|
|
void CreateSpellBook(int x, int y, int ispell, BOOL sendmsg, BOOL delta);
|
|
void CreateMagicArmor(int x, int y, int imisc, int icurs, BOOL sendmsg, BOOL delta);
|
|
void CreateMagicWeapon(int x, int y, int imisc, int icurs, BOOL sendmsg, BOOL delta);
|
|
BOOL GetItemRecord(int nSeed, WORD wCI, int nIndex);
|
|
void NextItemRecord(int i);
|
|
void SetItemRecord(int nSeed, WORD wCI, int nIndex);
|
|
void PutItemRecord(int nSeed, WORD wCI, int nIndex);
|
|
|
|
/* data */
|
|
|
|
extern unsigned char ItemCAnimTbl[169];
|
|
extern char *ItemDropStrs[35];
|
|
extern unsigned char ItemAnimLs[35];
|
|
extern int ItemDropSnds[35];
|
|
extern int ItemInvSnds[35];
|
|
extern int idoppely; // weak
|
|
extern int premiumlvladd[6];
|
|
|
|
#endif /* __ITEMS_H__ */
|