📄 char.h
字号:
#ifndef __CHAR_H__#define __CHAR_H__#include "common.h"#include "char_base.h"#include "net.h"#include "char_data.h"/*------------------------------------------------------------ *白巧件玄及缙及烂聒 *------------------------------------------------------------*/typedef enum{ CHAR_COLORWHITE, CHAR_COLORCYAN, CHAR_COLORPURPLE, CHAR_COLORBLUE, CHAR_COLORYELLOW, CHAR_COLORGREEN, CHAR_COLORRED, CHAR_COLORGRAY, CHAR_COLORBLUE2, CHAR_COLORGREEN2,}CHAR_COLOR;/*====================平乓仿及综岳卞楮允月楮醒====================*/void CHAR_createNewChar( int clifd, int dataplacenum,char* charname , int imgno,int faceimgno, int vital,int str,int tgh,int dex, int earth,int water,int fire,int wind, int hometown , char *cdkey );/*====================平乓仿及夫弘奶件====================*/void CHAR_login( int clifd, char* data, int saveindex );#define CHAR_warpToSpecificPoint( cindex, fl, x, y) _CHAR_warpToSpecificPoint( __FILE__, __LINE__, cindex, fl, x, y)BOOL _CHAR_warpToSpecificPoint( char *file, int line, int charaindex, int fl, int x, int y);/*====================平乓仿及本□皮====================*//*====================平乓仿及夫弘失它玄====================*/BOOL CHAR_charSaveFromConnectAndChar( int fd,Char* ch, int unlock );BOOL CHAR_charSaveFromConnect( int fd,int unlock );#define CHAR_logout( clifd, save) _CHAR_logout( __FILE__, __LINE__, clifd, save)BOOL _CHAR_logout( char *file, int line, int clifd, BOOL save);/*====================watch event ====================*/void CHAR_sendWatchEvent( int objindex, int chac, int* opt,int optlen,BOOL myflg );/*====================旦平伙====================*/BOOL CHAR_Skillupsend(int charaindex );void CHAR_SkillUp( int charaindex, int skillid );void CHAR_useSkill( int charaindex, int dir ,int skindex );typedef enum{ CHAR_WALKSUCCESSED, /* 岳 */ CHAR_WALKSYSTEMERROR, /* 扑旦 丞巨仿□ 及index民尼永弁卞 * 夫匀井井匀凶午井 */ CHAR_WALKEXTEND, /* 区左□田□仄化汹仇丹午仄凶[NPC卞及心*/ CHAR_WALKHITOBJECT, /* 窒井 卞癫匀化}汹仃卅井匀凶 */ CHAR_WALKPREWALK, /* prewalk奶矛件玄匹汹仃卅井匀凶( 檗祭 ) */ CHAR_WALKDIE, /* 韶氏匹中化汹仃卅中 */ CHAR_WALK1357, /* 标户 轾卞汹仇丹午仄化汹仃卅井匀凶 */}CHAR_WALKRET;/*====================平乓仿及啖 卞楮允月楮醒====================*/void CHAR_ctodirmode(char moji , int* dir , int* mode);INLINE void CHAR_getDXDY( int dir , int* dx, int* dy );INLINE int CHAR_getDX( int dir );INLINE int CHAR_getDY( int dir );int CHAR_getSameCoordinateObjects(int* objbuf, int siz,int ff, int fx, int fy);void CHAR_walkcall( int index );void CHAR_walk_start(int index, int x, int y, char* dir, BOOL mapsendmode);void CHAR_walk_init( int fd, int x, int y, char *direction, BOOL mapsendmode);CHAR_WALKRET CHAR_walk(int index, int dir, int mode);char* CHAR_makeOptionString( Char* ch );char* CHAR_makeStatusString( int index, char* category );#define CHAR_makeObjectCString( objindex, buf, buflen) _CHAR_makeObjectCString( __FILE__, __LINE__, objindex, buf, buflen)BOOL _CHAR_makeObjectCString( char *file, int line, int objindex, char* buf, int buflen );//BOOL CHAR_sendStatusString( int charaindex, char* category );#define CHAR_sendStatusString( A, B) _CHAR_sendStatusString( A, B, __FILE__, __LINE__ )BOOL _CHAR_sendStatusString( int charaindex, char* category, char* file, int line );BOOL CHAR_sendItemData( int charaindex, int *itemgroup, int num);BOOL CHAR_sendItemDataOne( int charaindex, int haveitemindex);BOOL CHAR_send_P_StatusString( int charaindex, unsigned int indextable );BOOL CHAR_send_N_StatusString( int charaindex, int num, unsigned int indextable );BOOL CHAR_send_K_StatusString( int charaindex, int num, unsigned int indextable );void CHAR_inputOwnTitle( int index ,char* name );void CHAR_selectTitle( int index, int titleindex );void CHAR_deleteTitle( int index, int titleindex );#define CHAR_complianceParameter( index) _CHAR_complianceParameter( index, __FILE__, __LINE__)int _CHAR_complianceParameter( int index, char *FILE, int LINE);int CHAR_findSurplusItemBox( int index );int CHAR_findEmptyItemBox( int index );int CHAR_findEmptyPoolItemBox( int index );int CHAR_findEmptyItemBoxNo( int index );void CHAR_moveEquipItem( int index, int fromindex, int toindex );void CHAR_ItemUse( int charaindex, int to_charaindex, int haveitemindex );void CHAR_DropItem( int charaindex, int itemindex );int CHAR_DropItemAbsolute( int itemindex, int floor, int x, int y,BOOL net);BOOL CHAR_DropItemFXY( int charaindex, int itemcharaindex, int fl, int x, int y, int* objindex );int CHAR_addItemSpecificItemIndex( int charaindex, int itemindex );void CHAR_PickUpItem( int charaindex, int dir );void CHAR_DropMoney( int charaindex, int amount );int CHAR_addItem( int charaindex, int itemid );int CHAR_addItemToChar( Char* ch, int itemid );int CHAR_pickupFollowPet( int charaindex, int petindex );#ifdef _GAMBLE_ROULETTEint NPC_MAPCLEANGOLD( int meindex , int floor);#endif#ifdef _DROPSTAKENEW#define MAXSTAKENUM 5int CasinoAccumulation(int charindex, int npcindex, int floor, int wincasinotype);void CHAR_talkToFloor(int floor, int talkindex, char* message, CHAR_COLOR color);int SetCasinoMap(int npcindex, int casinotype, int mapdropflag);int CasinoPay(int npcindex, int wincasinotype);#endifvoid CHAR_sendCSpecifiedObjindex( int fd, int index);void CHAR_sendSpecifiedobjindexCToCharaindex(int charaindex,int objindex);void CHAR_sendCToArroundCharacter( int charaindex );void CHAR_sendArroundCharaData( int charaindex );void CHAR_sendCDArroundChar( int fl, int x, int y, int objindex );void CHAR_sendCDArroundChar_Main( int fl, int x, int y, int objindex, BOOL mode );void CHAR_Look( int charaindex, int dir );void CHAR_initChatMagic(void);char* CHAR_appendNameAndTitle( int charaindex, char* src, char* buf, int buflen );void CHAR_Talk( int fd, int index,char* message,int color, int area );void CHAR_Loop( void );#define WINDOW_BUTTONTYPE_NONE (0)#define WINDOW_BUTTONTYPE_OK (1 << 0)#define WINDOW_BUTTONTYPE_CANCEL (1 << 1)#define WINDOW_BUTTONTYPE_YES (1 << 2)#define WINDOW_BUTTONTYPE_NO (1 << 3)#define WINDOW_BUTTONTYPE_PREV (1 << 4)#define WINDOW_BUTTONTYPE_NEXT (1 << 5)#define WINDOW_BUTTONTYPE_OKCANCEL (WINDOW_BUTTONTYPE_OK | WINDOW_BUTTONTYPE_CANCEL)#define WINDOW_BUTTONTYPE_YESNO (WINDOW_BUTTONTYPE_YES | WINDOW_BUTTONTYPE_NO)typedef enum{ WINDOW_MESSAGETYPE_MESSAGE, WINDOW_MESSAGETYPE_MESSAGEANDLINEINPUT, WINDOW_MESSAGETYPE_SELECT, WINDOW_MESSAGETYPE_PETSELECT, WINDOW_MESSAGETYPE_PARTYSELECT, WINDOW_MESSAGETYPE_PETANDPARTYSELECT, WINDOW_MESSAGETYPE_ITEMSHOPMENU, WINDOW_MESSAGETYPE_ITEMSHOPMAIN, WINDOW_MESSAGETYPE_LIMITITEMSHOPMAIN, WINDOW_MESSAGETYPE_PETSKILLSHOP, WINDOW_MESSAGETYPE_WIDEMESSAGE, WINDOW_MESSAGETYPE_WIDEMESSAGEANDLINEINPUT, WINDOW_MESSAGETYPE_POOLITEMSHOPMENU, WINDOW_MESSAGETYPE_POOLITEMSHOPMAIN, WINDOW_MESSAGETYPE_FAMILYADD, WINDOW_MESSAGETYPE_FAMILYJOIN, WINDOW_MESSAGETYPE_FAMILYOUT, WINDOW_MESSAGETYPE_FAMILYEND,//======================================= // shan add WINDOW_FMMESSAGETYPE_SELECT, WINDOW_FMMESSAGETYPE_DENGON, WINDOW_FMMESSAGETYPE_FMSDENGON, WINDOW_FMMESSAGETYPE_POINTLIST,#ifdef _FMVER21 WINDOW_FMMESSAGETYPE_TOP30DP,#endif WINDOW_FMMESSAGETYPE_DP, WINDOW_MESSAGETYPE_BANK, // Arminius 7.12 scheduleman WINDOW_MESSAGETYPE_PKSCHEDULELIST, WINDOW_MESSAGETYPE_PKSCHEDULESELECTFAMILY, WINDOW_MESSAGETYPE_PKSCHEDULEDETAIL, // Robin WINDOW_MESSAGETYPE_LOGINMESSAGE, WINDOW_MESSAGETYPE_FAMILYTAX, WINDOW_MESSAGETYPE_SHOWRIDEPET, WINDOW_MESSAGETYPE_FAMILYDETAIL, WINDOW_MESSAGETYPE_LEADERSELECT, WINDOW_MESSAGETYPE_LEADERSELECTQ, WINDOW_MESSAGETYPE_LEADERSELECTA, // Arminius 1.3 Auctioneer WINDOW_MESSAGETYPE_AUCTIONNEW, WINDOW_MESSAGETYPE_AUCTIONLIST_BUY, WINDOW_MESSAGETYPE_AUCTIONSURVEY, WINDOW_MESSAGETYPE_AUCTIONMODIFY, WINDOW_MESSAGETYPE_AUCTIONLIST_MODIFY,#ifdef _PETSKILL_CANNEDFOOD WINDOWS_MESSAGETYPE_PETSKILLSHOW,#endif#ifdef _MOUSE_DBL_CLICK WINDOW_MESSAGETYPE_MOUSEGETNAME,#endif#ifdef _RACEMAN WINDOW_MESSAGETYPE_RACEMAN_RANK,#endif}WINDOW_MESSAGETYPE;typedef enum{ CHAR_WINDOWTYPE_RETURNTOELDER=-1, /* 赢 尺 月它奴件玉它 */ CHAR_WINDOWTYPE_RESURRECTION=-2, /* 汊唾允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTBATTLE = 1, /* 月爵 毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTDUEL = 2, /* 月DUEL毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTTRADECARD = 3, /* 铜跟晶毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTPARTY = 4, /* 由□ 奴毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTBATTLEWATCH = 5, /* 棋爵毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_MICMESSAGE = 6, /* MICNPC毛银匀化请月它奴件玉它 */ // CoolFish: Trade 2001/4/18 CHAR_WINDOWTYPE_SELECTTRADE = 7, /* 交易 Window */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_PAGE1 = 10, /* 蟆毛 凳允月失奶 丞毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_PAGE2 = 11, /* 蟆毛 凳允月失奶 丞毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_PAGE3 = 12, /* 蟆毛 凳允月失奶 丞毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_PAGE4 = 13, /* 蟆毛 凳允月失奶 丞毛蓟 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_RENAME = 14, /* 蟆毛 允月它奴件玉它 */ CHAR_WINDOWTYPE_SELECTRENAMEITEM_RENAME_ATTENTION = 15, /* 蟆毛 允月它奴件玉它 */ CHAR_WINDOWTYPE_DENGON = 50, /* 鳗蜕 */ CHAR_WINDOWTYPE_WINDOWMAN_START = 100, CHAR_WINDOWTYPE_WINDOWMAN_STARTMSG = CHAR_WINDOWTYPE_WINDOWMAN_START, CHAR_WINDOWTYPE_WINDOWMAN_END = 200, CHAR_WINDOWTYPE_JANKEN_START = 210, CHAR_WINDOWTYPE_JANKEN_MAIN = 211, CHAR_WINDOWTYPE_JANKEN_END = 212, CHAR_WINDOWTYPE_TRANSMIGRATION_START = 213, CHAR_WINDOWTYPE_TRANSMIGRATION_MAIN = 214, CHAR_WINDOWTYPE_TRANSMIGRATION_END = 215, CHAR_WINDOWTYPE_TRANSMIGRATION_NONE = 216, CHAR_WINDOWTYPE_WINDOWHEALER_START = 220, CHAR_WINDOWTYPE_WINDOWHEALER_STARTMSG = CHAR_WINDOWTYPE_WINDOWHEALER_START, CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG = 221, CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG = 222, CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG = 223, CHAR_WINDOWTYPE_WINDOWHEALER_OKSPIRITMSG = 224, CHAR_WINDOWTYPE_WINDOWHEALER_ALLMSG = 225, CHAR_WINDOWTYPE_WINDOWHEALER_OKALLMSG = 226, CHAR_WINDOWTYPE_WINDOWHEALER_END = 227, CHAR_WINDOWTYPE_WINDOWSAVEPOINT_START = 230,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -