491 lines
13 KiB
C
491 lines
13 KiB
C
![]() |
|
|||
|
#ifndef __ITEM_H__
|
|||
|
#define __ITEM_H__
|
|||
|
|
|||
|
//#include "char.h"
|
|||
|
|
|||
|
#define NULLITEM "0"
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_FIST =0,
|
|||
|
ITEM_AXE,
|
|||
|
ITEM_CLUB,
|
|||
|
ITEM_SPEAR,
|
|||
|
ITEM_BOW,
|
|||
|
ITEM_SHIELD,
|
|||
|
ITEM_HELM,
|
|||
|
ITEM_ARMOUR,
|
|||
|
|
|||
|
ITEM_BRACELET =8,
|
|||
|
ITEM_MUSIC,
|
|||
|
ITEM_NECKLACE,
|
|||
|
ITEM_RING,
|
|||
|
ITEM_BELT,
|
|||
|
ITEM_EARRING,
|
|||
|
ITEM_NOSERING,
|
|||
|
ITEM_AMULET,
|
|||
|
/* ****** */
|
|||
|
ITEM_OTHER =16,
|
|||
|
ITEM_BOOMERANG, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
ITEM_BOUNDTHROW, // Ͷ<><CDB6><EFBFBD><EFBFBD>ͷ
|
|||
|
ITEM_BREAKTHROW, // Ͷ<><CDB6>ʯ
|
|||
|
ITEM_DISH =20,
|
|||
|
#ifdef _ITEM_INSLAY
|
|||
|
ITEM_METAL,
|
|||
|
ITEM_JEWEL,
|
|||
|
#endif
|
|||
|
#ifdef _ITEM_CHECKWARES
|
|||
|
ITEM_WARES, //<2F><><EFBFBD><EFBFBD>
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _ITEM_EQUITSPACE
|
|||
|
ITEM_WBELT, //<2F><><EFBFBD><EFBFBD>
|
|||
|
ITEM_WSHIELD, //<2F><>
|
|||
|
ITEM_WSHOES, //Ь<><D0AC>
|
|||
|
#endif
|
|||
|
#ifdef _EQUIT_NEWGLOVE
|
|||
|
ITEM_WGLOVE, //<2F><><EFBFBD><EFBFBD>
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _ALCHEMIST
|
|||
|
ITEM_ALCHEMIST =30,
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _PET_ITEM
|
|||
|
ITEM_PET_HEAD,
|
|||
|
ITEM_PET_TOOTH,
|
|||
|
ITEM_PET_CLAW,
|
|||
|
ITEM_PET_BREAST,
|
|||
|
ITEM_PET_BACK,
|
|||
|
ITEM_PET_WING,
|
|||
|
ITEM_PET_FEET,
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _ANGEL_SUMMON
|
|||
|
//ITEM_ANGELTOKEN,
|
|||
|
//ITEM_HEROTOKEN,
|
|||
|
#endif
|
|||
|
|
|||
|
ITEM_CATEGORYNUM,
|
|||
|
|
|||
|
}ITEM_CATEGORY;
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_FIELD_ALL,
|
|||
|
ITEM_FIELD_BATTLE,
|
|||
|
ITEM_FIELD_MAP,
|
|||
|
}ITEM_FIELDTYPE;
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_TARGET_MYSELF,
|
|||
|
ITEM_TARGET_OTHER,
|
|||
|
ITEM_TARGET_ALLMYSIDE,
|
|||
|
ITEM_TARGET_ALLOTHERSIDE,
|
|||
|
ITEM_TARGET_ALL,
|
|||
|
}ITEM_TARGETTYPE;
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_ID,
|
|||
|
ITEM_BASEIMAGENUMBER,
|
|||
|
ITEM_COST,
|
|||
|
ITEM_TYPE,
|
|||
|
ITEM_ABLEUSEFIELD,
|
|||
|
ITEM_TARGET,
|
|||
|
ITEM_LEVEL, /* LEVEL */
|
|||
|
#ifdef _ITEM_MAXUSERNUM
|
|||
|
ITEM_DAMAGEBREAK, //<2F><>Ʒʹ<C6B7>ô<EFBFBD><C3B4><EFBFBD>
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _ITEMSET4_TXT
|
|||
|
ITEM_USEPILENUMS, //<2F><>Ʒ<EFBFBD>ѵ<EFBFBD><D1B5><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
ITEM_CANBEPILE, //<2F>Ƿ<EFBFBD><C7B7>ɶѵ<C9B6>
|
|||
|
|
|||
|
ITEM_NEEDSTR,
|
|||
|
ITEM_NEEDDEX,
|
|||
|
ITEM_NEEDTRANS,
|
|||
|
ITEM_NEEDPROFESSION,
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _TAKE_ITEMDAMAGE
|
|||
|
ITEM_DAMAGECRUSHE,
|
|||
|
ITEM_MAXDAMAGECRUSHE,
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _ADD_DEAMGEDEFC
|
|||
|
ITEM_OTHERDAMAGE,
|
|||
|
ITEM_OTHERDEFC,
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _SUIT_ITEM
|
|||
|
ITEM_SUITCODE,
|
|||
|
#endif
|
|||
|
|
|||
|
ITEM_ATTACKNUM_MIN, /* <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_ATTACKNUM_MAX, /* <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYATTACK, /* <20><> <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYDEFENCE, /* <20><> <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYQUICK, /* QUICK <20><><EFBFBD><EFBFBD> */
|
|||
|
|
|||
|
ITEM_MODIFYHP, /* HP <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYMP, /* MP <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYLUCK, /* LUCK <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYCHARM, /* CHARM <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MODIFYAVOID, /* <20><> Ĥ<><C4A4> */
|
|||
|
ITEM_MODIFYATTRIB, /* <20><><EFBFBD><EFBFBD>Ĥ<EFBFBD><C4A4> */
|
|||
|
ITEM_MODIFYATTRIBVALUE, /* <20><><EFBFBD><EFBFBD>Ĥ<EFBFBD>Ұ<EFBFBD> */
|
|||
|
ITEM_MAGICID, /* <20><><EFBFBD><EFBFBD> į */
|
|||
|
ITEM_MAGICPROB, /* <20><><EFBFBD><EFBFBD> */
|
|||
|
ITEM_MAGICUSEMP, /* <20><> MP */
|
|||
|
|
|||
|
#ifdef _ITEMSET5_TXT
|
|||
|
ITEM_MODIFYARRANGE,
|
|||
|
ITEM_MODIFYSEQUENCE,
|
|||
|
|
|||
|
ITEM_ATTACHPILE,
|
|||
|
ITEM_HITRIGHT, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#endif
|
|||
|
#ifdef _ITEMSET6_TXT
|
|||
|
ITEM_NEGLECTGUARD,
|
|||
|
// ITEM_BEMERGE,
|
|||
|
#endif
|
|||
|
#ifdef _PETITEM__AMOI_E
|
|||
|
ITEM_PETFIX0,
|
|||
|
ITEM_PETFIX1,
|
|||
|
ITEM_PETFIX2,
|
|||
|
ITEM_PETFIX3,
|
|||
|
ITEM_PETFIX4,
|
|||
|
ITEM_PETFIX5,
|
|||
|
ITEM_PETFIX6,
|
|||
|
ITEM_PETFIX7,
|
|||
|
#endif
|
|||
|
/* <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĥ<EFBFBD>Ұ<EFBFBD><D2B0><EFBFBD>*/
|
|||
|
ITEM_POISON, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_PARALYSIS, /* <20><>̫ľ<CCAB><C4BE>1 <20><><EFBFBD><EFBFBD> <20><>ƥ<EFBFBD><C6A5>ئ<EFBFBD>У<EFBFBD> */
|
|||
|
ITEM_SLEEP, /* <20><>Ի<EFBFBD>۵<EFBFBD> ƥ<><C6A5>ئ<EFBFBD><D8A6> */
|
|||
|
ITEM_STONE, /* <20>ޣ۵<DEA3> ƥ<><C6A5>ئ<EFBFBD><D8A6> */
|
|||
|
ITEM_DRUNK, /* <20>쵤<EFBFBD><ECB5A4> <20><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD> */
|
|||
|
ITEM_CONFUSION, /* <20><><EFBFBD>٣<EFBFBD> <20><> ë<><C3AB><EFBFBD><EFBFBD> */
|
|||
|
|
|||
|
ITEM_CRITICAL, /* <20><><EFBFBD><EFBFBD> ū<>л<EFBFBD> Ĥ<><C4A4> */
|
|||
|
|
|||
|
ITEM_USEACTION, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_DROPATLOGOUT, /* <20><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD> <20>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_VANISHATDROP, /* <20><><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¾<EFBFBD><C2BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_ISOVERED, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD>¾<EFBFBD><C2BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
ITEM_CANPETMAIL, /* ʸ<><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ˪ľ<CBAA>¾<EFBFBD> */
|
|||
|
ITEM_CANMERGEFROM, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ئľ<D8A6>¾<EFBFBD> */
|
|||
|
ITEM_CANMERGETO, /* <20><><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD>ئľ<D8A6>¾<EFBFBD> */
|
|||
|
|
|||
|
ITEM_INGVALUE0, /* <20><><EFBFBD><EFBFBD>(5<><35><EFBFBD><EFBFBD>) */
|
|||
|
ITEM_INGVALUE1,
|
|||
|
ITEM_INGVALUE2,
|
|||
|
ITEM_INGVALUE3,
|
|||
|
ITEM_INGVALUE4,
|
|||
|
#ifdef _PETITEM__AMOI_E
|
|||
|
ITEM_TYPEOFITEM,
|
|||
|
#endif
|
|||
|
ITEM_PUTTIME, /* ʧ<><CAA7> ة<><D8A9> <20><>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_LEAKLEVEL, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><EFBFBD> */
|
|||
|
ITEM_MERGEFLG, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE>ʧ<EFBFBD><CAA7> ة<><D8A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
ITEM_CRUSHLEVEL, /* çľպ<C4BE><D5BA><EFBFBD><EFBFBD> 0 2 <20>߷<EFBFBD>çľ<C3A7><C4BE>ئ<EFBFBD><D8A6> 2<><32><EFBFBD><EFBFBD>ç */
|
|||
|
|
|||
|
ITEM_VAR1, /* <20><><EFBFBD>۽<EFBFBD> */
|
|||
|
ITEM_VAR2, /* <20><><EFBFBD>۽<EFBFBD> */
|
|||
|
ITEM_VAR3, /* <20><><EFBFBD>۽<EFBFBD> */
|
|||
|
ITEM_VAR4, /* <20><><EFBFBD>۽<EFBFBD> */
|
|||
|
ITEM_TIME,
|
|||
|
#ifdef _ITEM_COLOER
|
|||
|
ITEM_COLOER,
|
|||
|
#endif
|
|||
|
ITEM_DATAINTNUM,
|
|||
|
|
|||
|
}ITEM_DATAINT;
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_NAME, /* <20><> <20><> */
|
|||
|
ITEM_SECRETNAME, /* <20><> <20>ʽ<EFBFBD>ľ<EFBFBD>µ<EFBFBD> <20><> Ի */
|
|||
|
ITEM_EFFECTSTRING, /* <20><><EFBFBD><EFBFBD> ٯ */
|
|||
|
ITEM_ARGUMENT, /* ʧ<><CAA7> ة<><D8A9>¦<EFBFBD><C2A6> */
|
|||
|
#ifdef _ITEM_INSLAY
|
|||
|
ITEM_TYPECODE,
|
|||
|
ITEM_INLAYCODE,
|
|||
|
#endif
|
|||
|
ITEM_CDKEY, /* ʧ<><CAA7> ة<><D8A9> <20><>ë <20>ٱ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD> */
|
|||
|
#ifdef _ITEM_FORUSERNAMES
|
|||
|
ITEM_FORUSERNAME,
|
|||
|
ITEM_FORUSERCDKEY,
|
|||
|
#endif
|
|||
|
// CoolFish: 2001/10/11
|
|||
|
#ifdef _UNIQUE_P_I
|
|||
|
ITEM_UNIQUECODE, /* <20><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD> */
|
|||
|
#endif
|
|||
|
|
|||
|
ITEM_INGNAME0, /* <20><><EFBFBD>м<EFBFBD> <20><>(5<><35><EFBFBD><EFBFBD>) */
|
|||
|
ITEM_INGNAME1,
|
|||
|
ITEM_INGNAME2,
|
|||
|
ITEM_INGNAME3,
|
|||
|
ITEM_INGNAME4,
|
|||
|
|
|||
|
|
|||
|
ITEM_INITFUNC, /* ¦<><C2A6>
|
|||
|
* ITEM_Item*
|
|||
|
* ߯Ի<EFBFBD><EFBFBD> BOOL
|
|||
|
* ߯Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> CHAR_INITFUNC
|
|||
|
* <EFBFBD><EFBFBD> Ԫ */
|
|||
|
ITEM_FIRSTFUNCTION = ITEM_INITFUNC,
|
|||
|
ITEM_PREOVERFUNC, /* CHAR_PREOVERFUNC ë<><C3AB><EFBFBD><EFBFBD> */
|
|||
|
ITEM_POSTOVERFUNC, /* CHAR_POSTOVERFUNC ë<><C3AB><EFBFBD><EFBFBD>*/
|
|||
|
ITEM_WATCHFUNC, /* CHAR_WATCHFUNC ë<><C3AB><EFBFBD><EFBFBD> */
|
|||
|
ITEM_USEFUNC, /* ¦<>ѷ<EFBFBD><D1B7><EFBFBD>
|
|||
|
* int charaindex ƽ<EFBFBD>ҷ<EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* int charitemindex <EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>
|
|||
|
* ʧ<EFBFBD><EFBFBD> ة <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* ë<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
ITEM_ATTACHFUNC, /* ¦<>ѷ<EFBFBD><D1B7><EFBFBD>
|
|||
|
* int charaindex ƽ<EFBFBD>ҷ<EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* int itemindex ʧ<EFBFBD><EFBFBD> ة<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* ƽ<EFBFBD>ҷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD> ة
|
|||
|
* <EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD> ة ƥ<EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* ƥ<EFBFBD><EFBFBD>ئ<EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
ITEM_DETACHFUNC, /* ¦<>ѷ<EFBFBD><D1B7><EFBFBD>
|
|||
|
* int charaindex ƽ<EFBFBD>ҷ<EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* int itemindex ʧ<EFBFBD><EFBFBD> ة<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* ƽ<EFBFBD>ҷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD> ة
|
|||
|
* <EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD> ة ƥ<EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
* ƥ<EFBFBD><EFBFBD>ئ<EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
ITEM_DROPFUNC, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* ¦<EFBFBD>ѷ<EFBFBD>
|
|||
|
* int charaindex <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD>ҷ<EFBFBD>
|
|||
|
* int itemindex ʧ<EFBFBD><EFBFBD> ة<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
*/
|
|||
|
ITEM_PICKUPFUNC, /* ʧ<><CAA7> ةë<D8A9><C3AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* ¦<EFBFBD>ѷ<EFBFBD>
|
|||
|
* int charaindex <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD>ҷ<EFBFBD>index
|
|||
|
* int itemindex ʧ<EFBFBD><EFBFBD> ة<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>
|
|||
|
*/
|
|||
|
#ifdef _Item_ReLifeAct
|
|||
|
ITEM_DIERELIFEFUNC, /*ANDY_ADD
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
#endif
|
|||
|
#ifdef _PETITEM__AMOI_E
|
|||
|
ITEM_PETEQUITALLOW,
|
|||
|
ITEM_PETEQUITFORBIT,
|
|||
|
#endif
|
|||
|
#ifdef _PICKUP_ITEM_OTHER
|
|||
|
ITEM_FROMCDKEY,
|
|||
|
#endif
|
|||
|
|
|||
|
ITEM_LASTFUNCTION,
|
|||
|
|
|||
|
ITEM_DATACHARNUM = ITEM_LASTFUNCTION,
|
|||
|
|
|||
|
#ifdef _ANGEL_SUMMON
|
|||
|
ITEM_ANGELMISSION = ITEM_INGNAME0,
|
|||
|
ITEM_ANGELINFO = ITEM_INGNAME1,
|
|||
|
ITEM_HEROINFO = ITEM_INGNAME2,
|
|||
|
#endif
|
|||
|
|
|||
|
}ITEM_DATACHAR;
|
|||
|
|
|||
|
typedef enum
|
|||
|
{
|
|||
|
ITEM_WORKOBJINDEX,
|
|||
|
ITEM_WORKCHARAINDEX,
|
|||
|
#ifdef _ITEM_ORNAMENTS
|
|||
|
ITEM_CANPICKUP,
|
|||
|
#endif
|
|||
|
#ifdef _ITEM_TIME_LIMIT
|
|||
|
ITEM_WORKTIMELIMIT,
|
|||
|
#endif
|
|||
|
ITEM_WORKDATAINTNUM,
|
|||
|
}ITEM_WORKDATAINT;
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//typedef struct tagItem
|
|||
|
//{
|
|||
|
// int data[ITEM_DATAINTNUM];
|
|||
|
// STRING64 string[ITEM_DATACHARNUM];
|
|||
|
// int workint[ITEM_WORKDATAINTNUM];
|
|||
|
//
|
|||
|
// void* functable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
//}ITEM_Item;
|
|||
|
|
|||
|
typedef struct tagItem
|
|||
|
{
|
|||
|
int data[ITEM_DATAINTNUM];
|
|||
|
STRING64 string[ITEM_DATACHARNUM];
|
|||
|
int workint[ITEM_WORKDATAINTNUM];
|
|||
|
|
|||
|
void* functable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
#ifdef _ALLBLUES_LUA_1_2
|
|||
|
lua_State *lua[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
char *luafunctable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
#endif
|
|||
|
#ifdef _JZ_NEWSCRIPT_LUA
|
|||
|
STRING32 lua_charfunctable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
|
|||
|
void* sur_functable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
STRING32 sur_charfunctable[ITEM_LASTFUNCTION-ITEM_FIRSTFUNCTION];
|
|||
|
#endif
|
|||
|
|
|||
|
}ITEM_Item;
|
|||
|
|
|||
|
|
|||
|
typedef struct tagITEM_table
|
|||
|
{
|
|||
|
int use;
|
|||
|
ITEM_Item itm;
|
|||
|
int randomdata[ITEM_DATAINTNUM];
|
|||
|
}ITEM_table;
|
|||
|
|
|||
|
|
|||
|
typedef struct tagITEM_exists
|
|||
|
{
|
|||
|
BOOL use;
|
|||
|
ITEM_Item itm;
|
|||
|
}ITEM_exists;
|
|||
|
|
|||
|
#ifdef _PETITEM__AMOI_E
|
|||
|
#define ITEM_NOT_LIMIT 0x00000000 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define ITEM_NOT_DROP 0x00000010 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define ITEM_NOT_STREETVANDOR 0x00000100 //<2F><><EFBFBD>ɰڵ<C9B0>
|
|||
|
#define ITEM_NOT_TRADE 0x00001000 //<2F><><EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD>
|
|||
|
#define ITEM_NOT_MAIL 0x00010000 //<2F><><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD>
|
|||
|
#endif
|
|||
|
|
|||
|
#define ITEM_CHECKINDEX(index) \
|
|||
|
_ITEM_CHECKINDEX( __FILE__, __LINE__, index)
|
|||
|
INLINE BOOL _ITEM_CHECKINDEX( char *file, int line, int index);
|
|||
|
|
|||
|
|
|||
|
BOOL ITEM_initExistItemsArray( int num );
|
|||
|
BOOL ITEM_endExistItemsArray( void );
|
|||
|
#define ITEM_initExistItemsOne( itm) \
|
|||
|
_ITEM_initExistItemsOne( __FILE__, __LINE__, itm)
|
|||
|
int _ITEM_initExistItemsOne( char *file, int line, ITEM_Item* itm );
|
|||
|
|
|||
|
#define ITEM_endExistItemsOne( index ) \
|
|||
|
_ITEM_endExistItemsOne( index, __FILE__, __LINE__)
|
|||
|
|
|||
|
void _ITEM_endExistItemsOne( int index , char *file, int line);
|
|||
|
|
|||
|
#define ITEM_getInt( Index, element) _ITEM_getInt( __FILE__, __LINE__, Index, element )
|
|||
|
INLINE int _ITEM_getInt( char *file, int line, int index ,ITEM_DATAINT element);
|
|||
|
|
|||
|
|
|||
|
#define ITEM_setInt( Index, element, data) _ITEM_setInt( __FILE__, __LINE__, Index, element, data)
|
|||
|
INLINE int _ITEM_setInt( char *file, int line, int index ,ITEM_DATAINT element, int data);
|
|||
|
|
|||
|
|
|||
|
INLINE char* ITEM_getChar( int index ,ITEM_DATACHAR element );
|
|||
|
INLINE BOOL ITEM_setChar( int index ,ITEM_DATACHAR element , char* new);
|
|||
|
|
|||
|
INLINE int ITEM_getWorkInt( int index ,ITEM_WORKDATAINT element);
|
|||
|
INLINE int ITEM_setWorkInt( int index ,ITEM_WORKDATAINT element, int data);
|
|||
|
INLINE int ITEM_getITEM_itemnum( void );
|
|||
|
INLINE int ITEM_getITEM_UseItemnum( void );
|
|||
|
INLINE BOOL ITEM_getITEM_use( int index );
|
|||
|
void ITEM_constructFunctable( int itemindex );
|
|||
|
void* ITEM_getFunctionPointer( int itemindex, int functype );
|
|||
|
#ifdef _ALLBLUES_LUA_1_2
|
|||
|
typedef struct tagITEM_LuaFunc
|
|||
|
{
|
|||
|
lua_State *lua;
|
|||
|
char luafuncname[128];
|
|||
|
char luafunctable[128];
|
|||
|
struct tagITEM_LuaFunc *next;
|
|||
|
}ITEM_LuaFunc;
|
|||
|
|
|||
|
|
|||
|
INLINE BOOL ITEM_setLUAFunction( int itemindex, int functype, const char *luafuncname);
|
|||
|
INLINE lua_State *ITEM_getLUAFunction( int itemindex, int functype);
|
|||
|
|
|||
|
BOOL ITEM_addLUAListFunction( lua_State *L, const char *luafuncname, const char *luafunctable );
|
|||
|
#endif
|
|||
|
INLINE ITEM_Item *ITEM_getItemPointer( int index );
|
|||
|
int ITEM_getItemMaxIdNum( void);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
char* ITEM_makeStringFromItemData( ITEM_Item* one, int mode );
|
|||
|
char* ITEM_makeStringFromItemIndex( int index, int mode );
|
|||
|
|
|||
|
BOOL ITEM_makeExistItemsFromStringToArg( char* src , ITEM_Item* item, int mode );
|
|||
|
void ITEM_getDefaultItemSetting( ITEM_Item* itm);
|
|||
|
|
|||
|
|
|||
|
INLINE BOOL ITEM_CHECKITEMTABLE( int number );
|
|||
|
BOOL ITEM_readItemConfFile( char* filename );
|
|||
|
|
|||
|
|
|||
|
CHAR_EquipPlace ITEM_getEquipPlace( int charaindex, int itmid );
|
|||
|
|
|||
|
|
|||
|
char* ITEM_makeItemStatusString( int haveitemindex, int itemindex );
|
|||
|
char* ITEM_makeItemFalseString( void );
|
|||
|
char* ITEM_makeItemFalseStringWithNum( int haveitemindex );
|
|||
|
|
|||
|
|
|||
|
BOOL ITEM_makeItem( ITEM_Item* itm, int number );
|
|||
|
int ITEM_makeItemAndRegist( int number );
|
|||
|
|
|||
|
|
|||
|
void ITEM_equipEffect( int index );
|
|||
|
|
|||
|
void Other_DefcharWorkInt( int index);
|
|||
|
|
|||
|
char* ITEM_getAppropriateName(int itemindex);
|
|||
|
char* ITEM_getEffectString( int itemindex );
|
|||
|
|
|||
|
|
|||
|
int ITEM_getcostFromITEMtabl( int itemid );
|
|||
|
|
|||
|
#define ITEM_getNameFromNumber( id) _ITEM_getNameFromNumber( __FILE__, __LINE__, id)
|
|||
|
INLINE char* _ITEM_getNameFromNumber( char *file, int line, int itemid );
|
|||
|
|
|||
|
|
|||
|
int ITEM_getlevelFromITEMtabl( int itemid );
|
|||
|
int ITEM_getgraNoFromITEMtabl( int itemid );
|
|||
|
char *ITEM_getItemInfoFromNumber( int itemid );
|
|||
|
|
|||
|
int ITEM_getdropatlogoutFromITEMtabl( int itemid );
|
|||
|
int ITEM_getvanishatdropFromITEMtabl( int itemid );
|
|||
|
int ITEM_getcanpetmailFromITEMtabl( int itemid );
|
|||
|
int ITEM_getmergeItemFromFromITEMtabl( int itemid );
|
|||
|
|
|||
|
#ifdef _ITEM_CHECKWARES
|
|||
|
BOOL CHAR_CheckInItemForWares( int charaindex, int flg);
|
|||
|
#endif
|
|||
|
|
|||
|
BOOL ITEM_canuseMagic( int itemindex);
|
|||
|
// Nuke +1 08/23 : For checking the validity of item target
|
|||
|
int ITEM_isTargetValid( int charaindex, int itemindex, int toindex);
|
|||
|
|
|||
|
int ITEMTBL_getInt( int ItemID, ITEM_DATAINT datatype);
|
|||
|
char *ITEMTBL_getChar( int ItemID, ITEM_DATACHAR datatype);
|
|||
|
|
|||
|
int ITEM_getItemDamageCrusheED( int itemindex);
|
|||
|
void ITEM_RsetEquit( int charaindex);//<2F>Զ<EFBFBD>ж<EFBFBD><D0B6>װ<EFBFBD><D7B0>λ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD>֮<EFBFBD><D6AE>Ʒ
|
|||
|
void ITEM_reChangeItemToPile( int itemindex);
|
|||
|
void ITEM_reChangeItemName( int itemindex);
|
|||
|
|
|||
|
#ifdef _SIMPLIFY_ITEMSTRING
|
|||
|
void ITEM_getDefaultItemData( int itemID, ITEM_Item* itm);
|
|||
|
#endif
|
|||
|
|
|||
|
#ifdef _PET_ITEM
|
|||
|
char* ITEM_petmakeItemStatusString( int petindex, int itemid );
|
|||
|
#endif
|
|||
|
|
|||
|
#endif
|