/*------------------------------------------- 雲嗯 勻化月井民尼永弁 婁醒 meindex』』』 及奶件犯永弁旦 talker』』』』平乓仿弁正□及奶件犯永弁旦 ---------------------------------------------*/ BOOL NPC_WindowMoneyCheck(int meindex,int talker,int mode) { int cost=0; int level; level=CHAR_getWorkInt(meindex,CHAR_WORK_LEVEL); if(mode==1){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*---雲嗯毛喃曰請允---*/ cost=NPC_WindowCostCheck(meindex,talker); /*--蜇箕反移澀爛---*/ /*---雲嗯互簫曰月井升丹井及民尼永弁---*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } CHAR_DelGold( talker, cost); } } if(mode==2){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*---雲嗯毛喃曰請允---*/ cost=NPC_WindowCostCheckMp(meindex,talker); /*--蜇箕反移澀爛---*/ /*---雲嗯互簫曰月井升丹井及民尼永弁---*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } CHAR_DelGold( talker, cost); } } if(mode==3){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*--覲菁 及雲嗯及煌遙--*/ if( CHAR_getInt(talker,CHAR_HP) <CHAR_getWorkInt( talker, CHAR_WORKMAXHP)) { cost=NPC_WindowCostCheck(meindex,talker); } /*--竣 及雲嗯及煌遙--*/ if( CHAR_getInt(talker,CHAR_MP) < CHAR_getWorkInt( talker, CHAR_WORKMAXMP)) { cost=cost+NPC_WindowCostCheckMp(meindex,talker); } /*--移澀爛--*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } /*---雲嗯毛蛹日允---*/ CHAR_DelGold( talker, cost); } } CHAR_send_P_StatusString(talker,CHAR_P_STRING_GOLD); return TRUE; }
static void NPC_WindowHealer_selectWindow( int meindex, int toindex, int num) { char token[1024]; char escapedname[1024]; int fd = getfdFromCharaIndex( toindex); int buttontype=0; int windowtype=0; int windowno=0; /*--它奶件玉它正奶皿丟永本□斥互云云中及匹燮卞澀爛--*/ windowtype=WINDOW_MESSAGETYPE_MESSAGE; switch( num){ case 0: /*--薊 --*/ sprintf(token," 哎呀!你受傷了嗎? " "\n\n < 耐久力回復> " "\n < 氣力回復 > " "\n < 耐久力.氣力回復 > " "\n\n <寵物回復(免費)> " ); buttontype=WINDOW_BUTTONTYPE_CANCEL; windowtype=WINDOW_MESSAGETYPE_SELECT; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_STARTMSG; break; case 1: if( CHAR_getInt(toindex,CHAR_HP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 耐久力回復 >" "\n\n\n\n 似乎沒有必要回復唷! "); }else{ sprintf(token, " < 耐久力回復 >" "\n\n 似乎沒有必要回復唷! " "\n\n 因為寵物好像也受傷了!" "\n 先幫他回復吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; }else if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 耐久力回復 >" "\n\n\n 是要回復耐久力沒錯吧! " "\n\n 現在的等級可以免費幫你回復唷!"); }else{ int gold; gold=NPC_WindowCostCheck(meindex,toindex); sprintf(token," < 耐久力回復 >" "\n\n\n 是要回復耐久力沒錯吧! " "\n\n 收您%d的STONE 。" ,gold); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; case 2: if( CHAR_getInt(toindex,CHAR_MP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 氣力回復 >" "\n\n\n\n 似乎沒有必要回復唷! "); }else{ sprintf(token, " < 氣力回復 >" "\n\n 似乎沒有必要回復唷! " "\n\n 因為寵物好像也受傷了!" "\n 先幫他回復吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 氣力回復>" "\n\n 是要回復氣力沒錯吧! " "\n\n 現在的等級可以免費幫你回復唷!"); }else{ int cost; cost=NPC_WindowCostCheckMp(meindex,toindex); sprintf(token," < 氣力回復>" "\n\n\n 是要回復氣力沒錯吧! " "\n\n 收您%d的STONE 。", cost); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; case 3: sprintf(token, "\n <耐久力已回復>" "\n <寵物也已回復一般狀態>" "\n\n\n 這樣子就沒問題了! "); /*--覲菁 及心莢汊今六月--*/ NPC_WindowHealerAllHeal( toindex ,1 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 4: sprintf(token, "\n <氣力已回復>" "\n <寵物也已回復一般狀態>" "\n\n\n 這樣子就沒問題了! "); /*--竣 及心莢汊今六月---*/ NPC_WindowHealerAllHeal( toindex ,2 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKSPIRITMSG; break; case 6: { int cost=0; if(CHAR_getInt(toindex,CHAR_HP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)) { cost+=NPC_WindowCostCheck(meindex,toindex); } if( CHAR_getInt(toindex,CHAR_MP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)) { cost=cost+NPC_WindowCostCheckMp(meindex,toindex); } if(cost==0) { if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 耐久力氣力回復 >" "\n\n\n\n 似乎沒有必要回復唷! "); }else{ sprintf(token," < 耐久力氣力回復 >" "\n\n 似乎沒有必要回復唷! " "\n\n 因為寵物好像也受傷了!" "\n 先幫他回復吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; }else{ sprintf(token," < 耐久力氣力回復 >" "\n\n\n 是要回復耐久力氣力沒錯吧!" "\n\n 收您%d的STONE 。",cost); } } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 耐久力氣力回復 >" "\n\n\n 是要回復耐久力氣力沒錯吧!" "\n\n 現在的等級可以免費幫你回復唷!"); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_ALLMSG; break; case 7: sprintf(token," <耐久力氣力已回復>" "\n <寵物也已回復一般狀態>" "\n\n\n 這樣一來就回復健康了!"); NPC_WindowHealerAllHeal( toindex ,3 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKALLMSG; break; case 8: sprintf(token,"\n\n\n\n 真可惜似乎所帶的金錢不夠唷!"); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 9: sprintf(token," <寵物回復> " "\n\n\n 已經沒問題了啦! " "\n\n 但是太勉強的話也不行唷! "); NPC_WindowHealerAllHeal(toindex,0 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 10: sprintf(token," <寵物回復> " "\n\n\n 似乎沒有必要回復寵物的樣子。 " "\n\n 但是太勉強的話也不行唷! "); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; } makeEscapeString( token, escapedname, sizeof(escapedname)); /*-仇仇匹霜耨允月--*/ lssproto_WN_send( fd, windowtype, buttontype, windowno, CHAR_getWorkInt( meindex, CHAR_WORKOBJINDEX), escapedname); }
static void NPC_WindowHealer_selectWindow( int meindex, int toindex, int num) { char token[1024]; char escapedname[1024]; int fd = getfdFromCharaIndex( toindex); int buttontype=0; int windowtype=0; int windowno=0; /*--¥¦¥¤¥ó¥É¥¦¥¿¥¤¥×¥á¥Ã¥»¡¼¥¸¤¬¤ª¤ª¤¤¤Î¤ÇÀè¤ËÀßÄê--*/ windowtype=WINDOW_MESSAGETYPE_MESSAGE; switch( num){ case 0: /*--Áª --*/ sprintf(token," «u§r¡I§A¨ü¶Ë¤F¶Ü¡H " "\n\n ¡Õ @¤[¤O¦^´_¡Ö " "\n ¡Õ ®ð¤O¦^´_ ¡Ö " "\n ¡Õ @¤[¤O.®ð¤O¦^´_ ¡Ö " "\n\n ¡ÕÃdª«¦^´_(§K¶O)¡Ö " ); buttontype=WINDOW_BUTTONTYPE_CANCEL; windowtype=WINDOW_MESSAGETYPE_SELECT; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_STARTMSG; break; case 1: if( CHAR_getInt(toindex,CHAR_HP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " ¡Õ @¤[¤O¦^´_ ¡Ö" "\n\n\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I "); }else{ sprintf(token, " ¡Õ @¤[¤O¦^´_ ¡Ö" "\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I " "\n\n ¦]¬°Ãdª«¦n¹³¤]¨ü¶Ë¤F¡I" "\n ¥ýÀ°¥L¦^´_§a¡I"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; }else if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," ¡Õ @¤[¤O¦^´_ ¡Ö" "\n\n\n ¬On¦^´_@¤[¤O¨S¿ù§a¡I " "\n\n ²{¦bªºµ¥¯Å¥i¥H§K¶OÀ°§A¦^´_ò¡I"); }else{ int gold; gold=NPC_WindowCostCheck(meindex,toindex); sprintf(token," ¡Õ @¤[¤O¦^´_ ¡Ö" "\n\n\n ¬On¦^´_@¤[¤O¨S¿ù§a¡I " "\n\n ¦¬±z%dªºSTONE ¡C" ,gold); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; case 2: if( CHAR_getInt(toindex,CHAR_MP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " ¡Õ ®ð¤O¦^´_ ¡Ö" "\n\n\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I "); }else{ sprintf(token, " ¡Õ ®ð¤O¦^´_ ¡Ö" "\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I " "\n\n ¦]¬°Ãdª«¦n¹³¤]¨ü¶Ë¤F¡I" "\n ¥ýÀ°¥L¦^´_§a¡I"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," ¡Õ ®ð¤O¦^´_¡Ö" "\n\n ¬On¦^´_®ð¤O¨S¿ù§a¡I " "\n\n ²{¦bªºµ¥¯Å¥i¥H§K¶OÀ°§A¦^´_ò¡I"); }else{ int cost; cost=NPC_WindowCostCheckMp(meindex,toindex); sprintf(token," ¡Õ ®ð¤O¦^´_¡Ö" "\n\n\n ¬On¦^´_®ð¤O¨S¿ù§a¡I " "\n\n ¦¬±z%dªºSTONE ¡C", cost); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; case 3: sprintf(token, "\n ¡Õ@¤[¤O¤w¦^´_¡Ö" "\n ¡ÕÃdª«¤]¤w¦^´_¤@¯ëª¬ºA¡Ö" "\n\n\n ³o¼Ë¤l´N¨S°ÝÃD¤F¡I "); /*--ÂÑµ× ¤Î¤ß²óÉü¤µ¤»¤ë--*/ NPC_WindowHealerAllHeal( toindex ,1 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 4: sprintf(token, "\n ¡Õ®ð¤O¤w¦^´_¡Ö" "\n ¡ÕÃdª«¤]¤w¦^´_¤@¯ëª¬ºA¡Ö" "\n\n\n ³o¼Ë¤l´N¨S°ÝÃD¤F¡I "); /*--µ¤ ¤Î¤ß²óÉü¤µ¤»¤ë---*/ NPC_WindowHealerAllHeal( toindex ,2 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKSPIRITMSG; break; case 6: { int cost=0; if(CHAR_getInt(toindex,CHAR_HP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)) { cost+=NPC_WindowCostCheck(meindex,toindex); } if( CHAR_getInt(toindex,CHAR_MP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)) { cost=cost+NPC_WindowCostCheckMp(meindex,toindex); } if(cost==0) { if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " ¡Õ @¤[¤O®ð¤O¦^´_ ¡Ö" "\n\n\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I "); }else{ sprintf(token," ¡Õ @¤[¤O®ð¤O¦^´_ ¡Ö" "\n\n ¦ü¥G¨S¦³¥²n¦^´_ò¡I " "\n\n ¦]¬°Ãdª«¦n¹³¤]¨ü¶Ë¤F¡I" "\n ¥ýÀ°¥L¦^´_§a¡I"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; }else{ sprintf(token," ¡Õ @¤[¤O®ð¤O¦^´_ ¡Ö" "\n\n\n ¬On¦^´_@¤[¤O®ð¤O¨S¿ù§a¡I" "\n\n ¦¬±z%dªºSTONE ¡C",cost); } } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," ¡Õ @¤[¤O®ð¤O¦^´_ ¡Ö" "\n\n\n ¬On¦^´_@¤[¤O®ð¤O¨S¿ù§a¡I" "\n\n ²{¦bªºµ¥¯Å¥i¥H§K¶OÀ°§A¦^´_ò¡I"); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_ALLMSG; break; case 7: sprintf(token," ¡Õ@¤[¤O®ð¤O¤w¦^´_¡Ö" "\n ¡ÕÃdª«¤]¤w¦^´_¤@¯ëª¬ºA¡Ö" "\n\n\n ³o¼Ë¤@¨Ó´N¦^´_°·±d¤F¡I"); NPC_WindowHealerAllHeal( toindex ,3 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKALLMSG; break; case 8: sprintf(token,"\n\n\n\n ¯u¥i±¤¦ü¥G©Ò±aªºª÷¿ú¤£°÷ò¡I"); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 9: sprintf(token," ¡ÕÃdª«¦^´_¡Ö " "\n\n\n ¤w¸g¨S°ÝÃD¤F°Õ¡I " "\n\n ¦ý¬O¤Ó«j±jªº¸Ü¤]¤£¦æò¡I "); NPC_WindowHealerAllHeal(toindex,0 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 10: sprintf(token," ¡ÕÃdª«¦^´_¡Ö " "\n\n\n ¦ü¥G¨S¦³¥²n¦^´_Ãdª«ªº¼Ë¤l¡C " "\n\n ¦ý¬O¤Ó«j±jªº¸Ü¤]¤£¦æò¡I "); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; } makeEscapeString( token, escapedname, sizeof(escapedname)); /*-¤³¤³¤ÇÁ÷¿®¤¹¤ë--*/ lssproto_WN_send( fd, windowtype, buttontype, windowno, CHAR_getWorkInt( meindex, CHAR_WORKOBJINDEX), escapedname); }
/*------------------------------------------- ¶³¶â ¤Ã¤Æ¤ë¤«¥Á¥§¥Ã¥¯ °ú¿ô meindex¡z¡z¡z ¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹ talker¡z¡z¡z¡z¥¥ã¥é¥¯¥¿¡¼¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹ ---------------------------------------------*/ BOOL NPC_WindowMoneyCheck(int meindex,int talker,int mode) { int cost=0; int level; level=CHAR_getWorkInt(meindex,CHAR_WORK_LEVEL); if(mode==1){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*---¶³¶â¤ò³ä¤ê½Ð¤¹---*/ cost=NPC_WindowCostCheck(meindex,talker); /*--¸½ºß¤Ï²¾ÀßÄê---*/ /*---¶³¶â¤¬Â¤ê¤ë¤«¤É¤¦¤«¤Î¥Á¥§¥Ã¥¯---*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } CHAR_DelGold( talker, cost); } } if(mode==2){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*---¶³¶â¤ò³ä¤ê½Ð¤¹---*/ cost=NPC_WindowCostCheckMp(meindex,talker); /*--¸½ºß¤Ï²¾ÀßÄê---*/ /*---¶³¶â¤¬Â¤ê¤ë¤«¤É¤¦¤«¤Î¥Á¥§¥Ã¥¯---*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } CHAR_DelGold( talker, cost); } } if(mode==3){ if(level <= CHAR_getInt(talker,CHAR_LV)){ /*--ÂÑµ× ¤Î¶³¶â¤Î·×»»--*/ if( CHAR_getInt(talker,CHAR_HP) <CHAR_getWorkInt( talker, CHAR_WORKMAXHP)) { cost=NPC_WindowCostCheck(meindex,talker); } /*--µ¤ ¤Î¶³¶â¤Î·×»»--*/ if( CHAR_getInt(talker,CHAR_MP) < CHAR_getWorkInt( talker, CHAR_WORKMAXMP)) { cost=cost+NPC_WindowCostCheckMp(meindex,talker); } /*--²¾ÀßÄê--*/ if(CHAR_getInt(talker,CHAR_GOLD) < cost){ return FALSE; } /*---¶³¶â¤ò¸º¤é¤¹---*/ CHAR_DelGold( talker, cost); } } CHAR_send_P_StatusString(talker,CHAR_P_STRING_GOLD); return TRUE; }
static void NPC_WindowHealer_selectWindow( int meindex, int toindex, int num) { char token[1024]; char escapedname[1024]; int fd = getfdFromCharaIndex( toindex); int buttontype=0; int windowtype=0; int windowno=0; /*--它奶件玉它正奶皿丢永本□斥互云云中及匹燮卞涩烂--*/ windowtype=WINDOW_MESSAGETYPE_MESSAGE; switch( num){ case 0: sprintf(token," 哎呀!你受伤了吗? \n\n " " < 耐久力回复> \n" " < 气力回复 > \n" " < 耐久力·气力回复 > \n\n" " <宠物回复(免费)> " ); buttontype=WINDOW_BUTTONTYPE_CANCEL; windowtype=WINDOW_MESSAGETYPE_SELECT; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_STARTMSG; break; case 1: if( CHAR_getInt(toindex,CHAR_HP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 耐久力回复 >" "\n\n\n\n 似乎没有必要回复唷! "); }else{ sprintf(token, " < 耐久力回复 >" "\n\n 似乎没有必要回复唷! " "\n\n 因为宠物好像也受伤了!" "\n 先帮他回复吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; }else if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 耐久力回复 >" "\n\n\n 是要回复耐久力没错吧! " "\n\n 现在的等级可以免费帮你回复唷!"); }else{ int gold; gold=NPC_WindowCostCheck(meindex,toindex); sprintf(token," < 耐久力回复 >" "\n\n\n 是要回复耐久力没错吧! " "\n\n 收您%d的STONE 。" ,gold); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_HPMSG; break; case 2: if( CHAR_getInt(toindex,CHAR_MP) ==CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)){ if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 气力回复 >" "\n\n\n\n 似乎没有必要回复唷! "); }else{ sprintf(token, " < 气力回复 >" "\n\n 似乎没有必要回复唷! " "\n\n 因为宠物好像也受伤了!" "\n 先帮他回复吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 气力回复>" "\n\n 是要回复气力没错吧! " "\n\n 现在的等级可以免费帮你回复唷!"); }else{ int cost; cost=NPC_WindowCostCheckMp(meindex,toindex); sprintf(token," < 气力回复>" "\n\n\n 是要回复气力没错吧! " "\n\n 收您%d的STONE 。", cost); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; case 3: sprintf(token, "\n <耐久力已回复>" "\n <宠物也已回复一般状态>" "\n\n\n 这样子就没问题了! "); NPC_WindowHealerAllHeal( toindex ,1 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 4: sprintf(token, "\n <气力已回复>" "\n <宠物也已回复一般状态>" "\n\n\n 这样子就没问题了! "); NPC_WindowHealerAllHeal( toindex ,2 ); buttontype=WINDOW_BUTTONTYPE_OK; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKSPIRITMSG; break; case 6: { int cost=0; if(CHAR_getInt(toindex,CHAR_HP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXHP)) { cost+=NPC_WindowCostCheck(meindex,toindex); } if( CHAR_getInt(toindex,CHAR_MP) < CHAR_getWorkInt( toindex, CHAR_WORKMAXMP)) { cost=cost+NPC_WindowCostCheckMp(meindex,toindex); } if(cost==0) { if(NPC_PetHealerCheck(toindex)==FALSE){ sprintf(token, " < 耐久力气力回复 >" "\n\n\n\n 似乎没有必要回复唷! "); }else{ sprintf(token," < 耐久力气力回复 >" "\n\n 似乎没有必要回复唷! " "\n\n 因为宠物好像也受伤了!" "\n 先帮他回复吧!"); NPC_WindowHealerAllHeal(toindex,0 ); } buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_SPIRITMSG; break; }else{ sprintf(token," < 耐久力气力回复 >" "\n\n\n 是要回复耐久力气力没错吧!" "\n\n 收您%d的STONE 。",cost); } } if(NPC_WindowHealerLevelCheck(meindex,toindex)==TRUE){ sprintf(token," < 耐久力气力回复 >" "\n\n\n 是要回复耐久力气力没错吧!" "\n\n 现在的等级可以免费帮你回复唷!"); } buttontype=WINDOW_BUTTONTYPE_YESNO; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_ALLMSG; break; case 7: sprintf(token," <耐久力气力已回复>" "\n <宠物也已回复一般状态>" "\n\n\n 这样一来就回复健康了!"); NPC_WindowHealerAllHeal( toindex ,3 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKALLMSG; break; case 8: sprintf(token,"\n\n\n\n 真可惜似乎所带的金钱不够唷!"); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 9: sprintf(token," <宠物回复> " "\n\n\n 已经没问题了啦! " "\n\n 但是太勉强的话也不行唷! "); NPC_WindowHealerAllHeal(toindex,0 ); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; case 10: sprintf(token," <宠物回复> " "\n\n\n 似乎没有必要回复宠物的样子。 " "\n\n 但是太勉强的话也不行唷! "); buttontype=WINDOW_BUTTONTYPE_OK; windowtype=WINDOW_MESSAGETYPE_MESSAGE; windowno=CHAR_WINDOWTYPE_WINDOWHEALER_OKHPMSG; break; } makeEscapeString( token, escapedname, sizeof(escapedname)); /*-仇仇匹霜耨允月--*/ lssproto_WN_send( fd, windowtype, buttontype, windowno, CHAR_getWorkInt( meindex, CHAR_WORKOBJINDEX), escapedname); }