?? menuset.h
字號:
#ifndef __MENUSET_H__
#define __MENUSET_H__
#include "menunetwork.h" //021030 YGI
#define DUR_RATIO .70 // repair俊輯 葷儈且 duration 厚啦
#define RARE_DUR_RATIO .50 //020505 lsw 飯絹 俊輯 葷儈凳
#define RED_COLOR RGB(255,0,0)
#define YELLOW_COLOR RGB( 255, 255, 0 )
#define BLUE_COLOR RGB( 0, 0, 255 )
#define GREEN_COLOR RGB( 0, 255, 0 )
#define GRAY_COLOR RGB( 100, 100, 100 )
extern const int MAX_START;//020815-2 lsw
extern int GetItemMuchByMuchItem( int item_no ); // 薦樊撈 樂綽 酒撈袍狼 骯薦 頗廄竅扁
#define SCRIPT_IS_READ_NATION_BBS 46
////////////////////////////////////
#define MAX_BUY_ITEM 50
extern void MenuSet();
extern void SmallMenuSet();
extern bool g_MagicMenuOn;
extern bool g_explain_skill_on;
extern int g_explain_skill;
extern bool g_explain_magic_on;
extern int g_explain_magic;
extern bool g_explain_menu_on;
extern char g_explain_menu[MAX_STRING];
extern int magic_plus[MAX_MAGIC]; // 郴啊 葷儈茄 概流 穿利
extern int magic_plus_count; // 醚 骯薦
extern int magic_plus_start; // 嘛闌 撈固瘤 start何盒
extern bool recv_learn_item;
extern int danger_by_hunter;
extern int man_to_man_start;
extern int fight_map_stop;
extern int before_skill_no;
extern char explain_tactics[13][20];
extern Spr open_spr[75];
extern Spr spr_alphabet[36];
extern Spr ch_armor_image_after[7][80];
extern Spr ch_body_image_after[7][80];
extern Spr ch_line_image_after[7][80];
extern Spr ch_armor_image_after_b[7][80];
extern Spr ch_body_image_after_b[7][80];
extern Spr ch_line_image_after_b[7][80];
extern Spr skill_spr[MAX_SKILL];
extern BOOL LButtonDown;
extern POINT StateMousePoint;
extern SHN SHideNomal[MAX_SHN][MAX_SHN_FIELD];
extern SCharacter SCharacterData;
extern CHARACTERLIST g_CharacterList;
extern char y_temp[20];
extern bool no_active_box_yet; // 輯滾俊輯 藹闌 傈價 罐欄擱 false set.
extern int cDiceCount;
extern int y_delay;
extern int y_MenuFocus;
extern char sId[30];
extern char sPassword[30];
extern SMENU SMenu[MAX_MENU];
extern BOOL RButtonDown;
extern BOOL MouseDrag;
extern int LButtonCount;
extern int y_PutBarSize;
extern int id_password;
extern bool MessageOn;
extern char Message[MAX_STRING];
extern RECT rScreenRect;
extern int YouGotItemFlag;
extern int MouseItemInRectOn;
extern POINT MouseItemInRect;
extern int cRMoveMenu;
extern int cLMoveMenu;
extern int fRMoveMenu;
extern int fLMoveMenu;
extern int nPartyOther;
extern int nPartyState;
extern int nPartyShow;
extern struct InterfaceFlag main_interface;
extern int RectImageOn;
extern int nBankTemp;
extern int WearAble[9];
extern int HandBackUp;
extern int HandBackUptype;
extern int HandItemOn;
extern int aMagicItem[3][4][3][5];
extern ItemAttr aItemInventoryFull;
extern int SkillInventory[2][2][4];
extern int Skill_Know_Inv[3][3];
extern int aSellBuyItemPos[MAX_BUY_ITEM*3*5];
extern int aSellBuyItemMax;
extern bool LeftShiftOn;
extern int AbilityToInt[20];
extern ItemAttr aSellBuyItemAttr[MAX_BUY_ITEM*3*5];
extern int storelistindex ;
extern bool is_buymenu_On;
extern int motherSkillImageNo[2];
extern int motherSkillImageType[2]; // 膠懦 硅快扁俊輯 力格魄 撈固瘤 鷗澇
extern int SkillInventory[2][2][4];
extern Spr ch_armor_image_after[7][80];
extern Spr ch_body_image_after[7][80];
extern Spr ch_line_image_after[7][80];
extern Spr ch_armor_image_after_b[7][80];
extern Spr ch_body_image_after_b[7][80];
extern Spr ch_line_image_after_b[7][80];
extern Spr spr2[MAX_IMAGE2];
extern int nItemOther;
extern K_ITEM i_DivideItem; // 酒撈袍狼 加己客 困摹啊 樂促.
extern const int y_ItemSubMenu[];//021014 lsw
extern int memorize[12];
extern void PutMapBright2( LPVOID dest, LPVOID alpha);
//===================================================================================================================================
extern void kein_TextPut(int x, int y, char *sSource);
extern void FieldTypeTextPut(int mx,int my,int x,int y,char *temp);
extern void LoadMenuData(int nNum);
extern void FreeMenuData(int nNum);
extern void PutImageCenter(int mx, int my, int x, int y, int nImageNumber);
extern inline BOOL MouseInRectCheak(int x, int y, RECT Box, BOOL flag = TRUE );
extern void SetCharacterData();
extern void SetRect(RECT &rect,int left, int top, int right, int bottom);
extern void MoveTextPut(int x, int y, char *sSource, int type=0);
extern void SendBankInfo(int type, DWORD money );
extern void RecvBankDeposit(DWORD);
extern void RecvBankRepayment(DWORD, DWORD, DWORD);
extern int YesOrNo( char *s, char *title );
extern char SpaceBarPress();
extern void CountingByKeyboard( int input_key, int &count, int plus );
extern void ItemRead();
extern void PutItemIcon(int x, int y, int item_number, int delay=0, int effect = 2, int is_not_equip = 0);
extern void PutItemIconAni(int x, int y, int item_number);
extern int GetItemAttr(int item_id, int attr);
extern char *GetItemName( int item );
extern void SendMoveItem( int item_no, POS s, POS t, bool sound = true);
extern void GetItemAnimationNumber(int num, int &a, int &b, int &c, int &d, int &e, int &f, int &g);
extern bool ReadSkillTable( );
extern bool ReadHouseTable();
extern bool LoadItemJoinTable();
extern void PutMagicIcon( int x, int y, int num, int flag=0, int type=2 );
extern void PutSkillIcon( int x, int y, int num, int flag=0, int flag2=2 );
extern void ChangeSkillMenuInventory( int x );
extern BOOL MenuFocus(int menu);
extern inline void RightClose();
extern bool IsLeftWindowOpen( );
extern bool IsRightWindowOpen();
extern void AbilityOpenWhenLevelUp();
extern void SetPartyMenu( int type );
extern void ChangeItem( int start ); // 烙矯 酒撈袍 官操扁
extern void ItemSound( int item );
extern void EquipSound( int item_no );
extern int GetItemValueBuy( int item_id );
extern int GetItemValueSell( ItemAttr item );
extern void GetLearnSkillInv( int type, int start = 0 );
extern void GetLearnKnowlageInv( int start = 0 );
extern int mother[32][2];
extern bool IsLearnSkill( int m );
extern void MagicSetting();
extern int CalcTextToPage( int width, int height, char *source );
extern void BbsTextPut( int x, int y, int width, int height, char *source, int page );
extern void BbsTextPut2( int x, int y, int width, int max_line, char *source, int page );
//extern void CallOkCancelMessageBox( int menu, int x, int y, char *source, bool ok_cancel=true, int param = 0 );
extern void CallItemMessageBox( int menu, int item_num, char *source );
extern void MenuButtonRightExplain( int x, int y, int &count, char * title );
extern void MenuButtonLeftExplain( int x, int y, int &count, char * title );
extern void LeftMenuClose();
extern int dw_TotalImageSize;
extern void LoofSetHeroAbility( int ability[] );
//extern void SendReCallItemFromServer( int type );
extern void FreeChImage();
extern void FreeOpenningSpr( BYTE **buf );
extern void SetItemMakeOk( ItemAttr item );
extern int UseItemByRbutton(POS pos_s, ItemAttr &item_attr); // 酒撈袍闌 坷弗率 滾瓢欄肺 努腐沁闌 錠
extern int Call_GM_2ND_Skill_Menu();//021014 lsw
extern int Call_Skill_Master_Menu();//021111 lsw
extern int Call_MERCHANT_REGISTER_Menu();//021126 lsw
extern int Call_EXCHANGE_BOND_MONEY_Menu();
extern void SetLearnItemData( int menu, ItemJoinSelect list[]); //酒撈袍 硅快扁 府膠飄 硅凱 悸潑
extern int GetResultItemBySkill( int skill, int item[10] ); // 弊 膠懦肺 父甸薦 樂綽 酒撈袍 格廢 啊廉坷扁
extern bool FindLearnItem( int item ); // 郴啊 硅款 酒撈袍牢瘤 魄竄
extern ItemAttr *GetItemByPos( POS item );
extern bool DivideItem( K_ITEM *item, int much );
extern int NotNeededMouseLButtonClick( void ); // 付快膠啊 勸己拳等 皋春 救俊 樂綽瘤甫 眉農
extern int GetWeight( ItemAttr item );
extern int SearchLearnItem( int item ); // 郴啊 硅款 酒撈袍困摹 茫扁
extern void PrintTextOnMenu2();
extern void PrintTextOnMenu();
extern Spr openhouse[MAX_HOUSE];
extern Spr closehouse[MAX_HOUSE];
extern void LoadHouseImage( int is_open );
extern void FreeHouseImage( );
extern void PutHouseImage( int x, int y, int num, bool is_open );
extern void LoadHouse( );
/// 概流 硅快扁 儈 皋家靛甸...
extern int SearchNextMagicNumByClass( int num, int cls ); // 絹恫 概流 促瀾狼 鞍籃 拌凱狼 付過闌 茫綽促.
extern int GetMagicMaxByClass( int cls ); // 弊拌凱狼 醚 概流 薦甫 備茄促.
extern int GetLearnableMagicMaxByClass( int cls ); // 弊 拌凱俊輯 郴啊 硅匡 薦 樂綽 付過 薦甫 備茄促. (撈固 硅款 付過 器竊 )
extern bool CanLearnMagic( int num ); // 弊 付過闌 硅匡薦 樂唱?
extern MagicByClass magic_by_class;
extern void GetDivedeMagicByClass( ); // 拌凱寸 硅匡薦 樂綽 付過... 悸
extern void ServerConnectMenuClose(); // 輯滾客 包訪撈 樂綽 皋春甫 摧闌 錠..
extern DWORD GetMoneyByItem( ); // 牢亥配府 芒俊 樂綽 搗 拌魂
extern DWORD GetNewMoneyByItem( );
extern int SearchCoinItem( int &a, int &b, int &c);
extern int SearchNewCoinItem( int &a, int &b, int &c);
extern int SearchItemPosByNumber(ItemAttr *item, int &a, int &b, int &c);
extern int SubtractMoney( DWORD money );
extern int AddMoney( DWORD money );
extern void SetMemorizeArray( int num );
extern int DoMemorize( int magic_num );
extern void InitMemorize( ); // 皋葛扼撈令 檬扁拳
extern int MemorizeYet( int magic_num );
extern int GetNoLearnMagic( int cls, int &magic_num ); // 給硅快綽 付過 撈撫苞 弊 撈蠟甫 舅酒坷綽 竊薦 // magic_num欄肺 付過 鍋齲甫 逞敗 霖促.
extern void CheckPartyFace( ); // 頗萍盔甸撈 樂綽 瘤甫 眉農秦輯 拳擱俊 謊妨霖促.
extern void SetExistMeOfParty( ); // 頗萍盔吝 唱綽 親惑 煉牢茄 惑怕促..
extern int SearchMyPartyOfMySight( LpCharacterParty party ); // 郴 矯具俊 頗萍盔撈 樂蠢襯?
extern void SetHangulFont( int type );
extern void ViewSmallMapCheck();
//extern K_ITEM give_item; // 背券儈 酒撈袍吝 郴啊 林綽 酒撈袍
//extern K_ITEM recv_item; // 背券儈 酒撈袍吝 郴啊 罐綽 酒撈袍
extern inline int CheckMouseInMenu( int i );
extern void DropItemSound( int item ); // 酒撈袍 頂俊 凍絹飄府綽 家府
extern inline void LeftClose(); // 哭率 芒 葛滴 摧扁
extern int dexDefenseCor( int dex );
extern void MenucheckWhenHeroDie( ); // 磷菌闌錠 皋春眉歐
extern void SendSmileFace( int smileno );
extern bool g_bMagicSelect;
extern int isCrashSmallMapByOther();
extern void CheckFocusMenu();
extern void GrobalValueSeet();
extern int CanLearnMagicByCount( int num );
extern void InitPartyState( );
extern void LoadSmallMenuImage2( int num ); // 眠啊 皋春 撈固瘤 肺爹棺 秦力..
extern void FreeSmallMenuImage2( );
extern void FreeMagicIcon( );
extern int GetBelieveGodByMenu( int menu, char *God ); // 腳傈 皋春俊輯 瓜綽 腳欄肺...
extern void CallGodMenuMessage( char *msg, int believe );
extern inline int GetMenuNumByBelieveGod( int god );
extern void PutSmallmenuImage(int mx, int my, int x,int y, int image_number, int type);
extern void FreeSmallMenuETC();
extern int QuickKey( int menu, HWND active_hwnd = NULL);
extern bool bCallGodMeetingMenu;
extern Spr *GetSprOfMenu( int type, int imagenumber );
extern int GetHourToRate( int h );
extern void PrintQuickKey( char *text);
extern int GetMoveMenuDefineByMenuNumber( int menu, int is_open );
extern void CheckAutoDivideMoney( ItemAttr *item );
extern int LoadMagicName( );
//extern int GetAbilityMax( int ability_type );
extern void OpenRecvEarMessageMenu();
extern void CloseRecvEarMessageMenu();
extern int ExistBox( DWORD box_id );
extern int GetItemAttrWeapon( int item ); // 厘饅啊瓷茄 巴吝俊 瀝富 厘饅撈 啊瓷茄瘤 犬牢竅綽 巴.
//extern int ExplainItemBySelectItemAfter( int x, int y, int item_number, char explain[5][40] );
extern void GetSupperItem( int god );
extern int ViewSmallMap2( int x, int y);
extern void SetSmallMapMenu( );
extern void PrintNoteMeeting( int g_Note_Meeting );
extern void CheckErrorMessage( LPSTR str );
extern int OnlyAlphabet( char *str, int len );
extern int OnlyNumber( char *str, int len );
extern void PutDot( int x, int y, WORD color );
extern int ExplainBackView( int &x, int &y, int count ); // 嘛闌 諒釬甫 啊廉埃促.
extern void ShowExplain(); // 阿輛 汲疙鞏 焊咯林扁
extern void CheckMagicExplain( int magic_no ); // 概流 汲疙
extern void CheckSkillExplain( int skill_no ); // 膠懦 汲疙
extern int ItemExplainAfterMenuDisplay( int prev ); // 唱吝俊 汲疙闌 剁款促.
extern void SetMenuExplain( int type, int menu, int start_field );
extern void ExplainMenuSet( char *temp );
extern int InsertIntArray( int node, int *int_array, int &curr_count, int array_max );
extern int DeleteIntArray( int node, int *int_array, int &curr_count, int array_max );
extern int IsJustViewMenuWhenDead( int dest_menu );
extern void PutMagicIconAll();
extern int QuickKeyFirst( int menu );
extern int IsExistNodeToArray( int node, int *int_array, int curr_count );
extern void SetLearnItem();
extern int ConvStoreListToMenu( int prev, bool is_store );
extern void lsw_menu_set( );//010830 lsw
extern bool CanLearnItemByNeedSkill( int join_no );
extern void SmallMapClose();
extern void GetTatics();
extern int SetQuickSkill( int *index, int start, int type );
extern void LoadFilterWord( );
extern bool CheckNumber( char *text, int len ); // 箭磊 撈寇狼 藹撈 樂綽瘤甫 眉農茄促. 樂欄擱 true 絕欄擱 false
extern void kh_menu_set( );
extern void ItemSoundOfDropItem( int item_no );
extern void StopWaveOfMenu();
extern void GetNationBBS( char *filename );
extern void OpenFightMapSignMenuOpen( int tema[] );
extern int IsSameNation( int type, LpCharacterParty lpParty );
extern void LoadTextDefault( char *filename, char *text, int text_max );
extern int CheckRegistCandidate( );
extern void CallMessageBox(BOOL bBig, int x, int y, char *source, BOOL bType=FALSE);
extern void MessagePut();
extern void LottoMenuSet(); //soto-030425
extern void LuckyMenuSet(); //soto-030429
extern void LuckyEventSet(); //soto-030502
extern void LuckyMenuOpen();//soto-030429
extern void LottoMenuOpen();//soto-030429
extern void WinnerMenu();//soto-030502
//020530 lsw
#define MAX_MAGIC_MEMORY 8//020420 lsw
#define QM_MAGIC 1//QM_ QuickMemory
#define QM_SKILL 2
#define QM_COMBATSKILL 3
typedef struct QUICKMEMORY
{
char OwnerName[21];//020701 lsw
int iType;// 1 付過 2 膠懦 3 傈捧膠懦
int iNo;//角龍 逞滾
int iBuffer;
void SetQuickMemory(const char* name ,const int iTypeValue,const int iTypeNo)
{
if(name)
{
const int iLen = strlen(name);
if(21 < iLen|| 0 >= iLen )
{
Clear();
return;
}
strcpy(OwnerName, name);
iType = iTypeValue;
iNo = iTypeNo;
}
else
{
Clear();
}
return;
}
void Clear()
{
iType = 0;
iNo = 0;
}
}t_QuickMemory,*LPQUICKMEMORY;
extern t_QuickMemory SaveMemory[MAX_MAGIC_MEMORY]; // 竄綿虐肺 扁撅矯難敵 格廢 //020530 lsw
extern t_QuickMemory HotKeyMemory; // 滾瓢 茄俺肺 葷儈 竅綽 Ram 鞍籃 函薦
extern void ClearQuickMemory();
extern void DisplayQuickMemory(const int iType, const int iTargetNo, const int iX, const int iY);
extern void SetQuickMemoryByKeyInput(const int iType, const int iNo, const int iBuffer = 0);
extern int ViewTipsFlag;
extern void ExplainItem2( int x, int y, ItemAttr *olg_item );
extern void LoadManList();
extern int GetItemExplainLine( ItemAttr *olg_item );
extern void GetWORDOfDWORD( DWORD dword, WORD &word1, WORD &word2 );
extern int bar1_r, bar1_g, bar1_b;
extern int bar2_r, bar2_g, bar2_b;
extern int g_RecvLoanInfo;
extern int g_BattleStatusView;
extern char g_szMoneyName[];//021014 lsw
/////////////////////////////////////////////
#define AT_JOIN_COLOSSUS 1// 妮肺輯膠 曼咯俊 悼狼茄促.
struct k_assent // 蠟歷啊 購啊俊 悼狼且錠甫 措厚茄 歷厘 函薦
{
int type;
DWORD time; // 矯埃
union
{
char data[512];
WORD default_word;
}u;
k_assent()
{
type = 0;
}
};
/////////////////////////////////////////////
class CGuildItem
{
public :
int m_Max;
int old_page;
DWORD *m_pIndex;
ItemAttr *m_pItem;
DWORD m_BoxMoney;
public :
CGuildItem()
{
m_pIndex = 0;
m_pItem = 0;
clear();
}
int clear()
{
m_Max = 0;
if( m_pIndex ) delete m_pIndex;
if( m_pItem ) delete m_pItem;
m_pIndex = 0;
m_pItem = 0;
old_page = 0;
m_BoxMoney = -1; // -1老訂 啊廉坷扁 風憑闌 角青矯虐瘤 臼綽促.
return 1;
}
int clear( int ct )
{
memset( &m_pItem[ct], 0, sizeof( ItemAttr ) );
m_pIndex[ct] = 0;
return 1;
}
~CGuildItem()
{
clear();
}
DWORD GetIndex( int ct ) // 牢鄲膠藹 啊廉坷扁
{
if( !m_pIndex ) return 0;
if( ct > m_Max ) return 0;
return m_pIndex[ct];
}
int InsertItem( int ct, int index, ItemAttr *item ) // 酒撈袍 火澇
{
if( !m_pIndex ) return 0;
if( ct > m_Max ) return 0;
m_pIndex[ct] = index;
m_pItem[ct] = *item;
return 1;
}
int SerchFirstIndex( int find_index ) // 漂瀝 牢鄲膠藹闌 啊瘤絆 樂綽 鍋齲甫 茫綽促.
{
if( !m_pIndex ) return -1;
for( int i=0; i<m_Max; i++ )
{
if( m_pIndex[i] >= find_index ) return i;
}
return -1;
}
ItemAttr *GetItemByParm( int ct ) // 頗扼皋磐肺 酒撈袍 啊廉坷扁
{
if( !m_pIndex ) return 0;
if( ct > m_Max ) return 0;
return &m_pItem[ct];
}
int GetMax() { return m_Max; }
};
/////////////////////////////////////////////
#define MAX_POTAL_MAP 40
class CPotalMenuUnit
{
public :
char map_name[50];
int map_number;
int money;
int type;
int img_type;
int level;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -