´«Ææ¼ÜÉ裺×Ô¶¨Òå°´Å¥´¥·¢ NPC ½Å±¾²Ù×÷Ö¸ÄÏ

À´Ô´£º ×÷Õߣº µã»÷£º
ÔÚ´«ÆæÒýÇæ¼ÜÉèÖУ¬Í¨¹ý×Ô¶¨Òå°´Å¥´¥·¢ NPC ½Å±¾£¬¿ÉʵÏÖ¿ìËÙµ÷Óà NPC ¹¦ÄÜ£¨ÈçÈÎÎñ½ÓÈ¡¡¢µÀ¾ß¶Ò»»£©£¬ºËÐIJÙ×÷ÐèÍê³É “·þÎñ¶Ë°´Å¥ÅäÖÃ→¿Í»§¶Ë×ÊԴͬ²½→NPC ½Å±¾°ó¶¨” Èý²½£¬ÒÔÏÂΪ¾ßÌåÁ÷³Ì£¨ÒÔ GOM¡¢HERO Ö÷Á÷ÒýÇæÎªÀý£©¡£
Ò»¡¢·þÎñ¶ËÅäÖãº×Ô¶¨Òå°´Å¥»ù´¡²ÎÊýÉèÖÃ
·þÎñ¶Ëͨ¹ýButton.iniÎļþ¶¨Òå°´Å¥ÊôÐÔ£¬°üÀ¨Î»Öᢴ¥·¢ÃüÁî¡¢ÏÔʾÌõ¼þ£¬Êǰ´Å¥ÉúЧµÄºËÐÄ»·½Ú£º
ÕÒµ½°´Å¥ÅäÖÃÎļþ
´ò¿ª·þÎñ¶Ë¸ùĿ¼£¬½øÈëMir200\EnvirÎļþ¼Ð£¬ÕÒµ½Button.iniÎļþ£¨²¿·ÖÒýÇæÃüÃûΪCustomButton.ini£©£¬ÓÒ¼üÓüÇʱ¾»ò Notepad++ ´ò¿ª¡£
Ìí¼Ó×Ô¶¨Òå°´Å¥ÅäÖöÎ
ÔÚÎļþĩβÐÂÔö°´Å¥ÅäÖã¬ÐèÃ÷È· 6 ¸ö¹Ø¼ü²ÎÊý£¬Ê¾ÀýÈçÏ£¨ÒÔ “¿ìËÙ¶Ò»»” °´Å¥ÎªÀý£©£º
[CustomButton1] ; °´Å¥ID£¬´Ó1¿ªÊ¼µÝÔö£¨±ÜÃâÖØ¸´£©
Name=¿ìËÙ¶Ò»» ; °´Å¥ÏÔʾÃû³Æ
PosX=800 ; °´Å¥ÔÚ¿Í»§¶Ë½çÃæµÄX×ø±ê£¨¸ù¾Ý·Ö±æÂʵ÷Õû£¬Èç1024·Ö±æÂÊÉè800£©
PosY=500 ; °´Å¥ÔÚ¿Í»§¶Ë½çÃæµÄY×ø±ê
IconIndex=302 ; °´Å¥Í¼±êË÷Òý£¨¶ÔÓ¦¿Í»§¶ËItem.wilÖеÄͼ±ê£©
Command=@CallNPC 1001 ; ´¥·¢ÃüÁ@CallNPC+NPC±àºÅ£¬1001ΪĿ±êNPCµÄID£©
ShowLevel=1 ; °´Å¥ÏÔʾµÈ¼¶£¨1¼¶¼°ÒÔÉϽÇÉ«¿É¼û£¬0ΪËùÓнÇÉ«¿É¼û£©

ÅäÖÃ˵Ã÷£ºCommand²ÎÊýÊǹؼü£¬Ðèͨ¹ý “@CallNPC+NPC ±àºÅ” ¹ØÁªÄ¿±ê NPC£¬ºóÐø½Å±¾½«»ùÓÚ¸ÃÃüÁî´¥·¢¡£
±£´æÅäÖò¢¼ÓÔØÉúЧ
±£´æButton.iniÎļþºó£¬ÎÞÐèÖØÆôÕû¸ö·þÎñ¶Ë£¬Ö»ÐèÔÚÒýÇæ¿ØÖÆÆ÷ÖÐÕÒµ½ “Ë¢ÐÂÅäÖÔ °´Å¥£¨GOM ÒýÇæÔÚ “²ÎÊýÉèÖÔ ½çÃæ£¬HERO ÒýÇæÔÚ “·þÎñ¹ÜÀí” ½çÃæ£©£¬µã»÷ˢа´Å¥ÅäÖã¬È·±£Ð°´Å¥²ÎÊý±»¼ÓÔØ¡£
¶þ¡¢¿Í»§¶Ëͬ²½£ºÈ·±£°´Å¥ÏÔʾÕý³£
¿Í»§¶ËÐèͬ²½°´Å¥Í¼±êÓë½çÃæÅäÖ㬷ñÔò°´Å¥»áÏÔʾ¿Õ°×»òÎÞ·¨µã»÷£¬²Ù×÷ÈçÏ£º
ͬ²½°´Å¥Í¼±ê×ÊÔ´
´ò¿ª¿Í»§¶Ë¸ùĿ¼MirÎļþ¼Ð£¬ÕÒµ½Item.wilÎļþ£¨Í¼±ê×ÊÔ´Îļþ£©£¬Óà WIL ±à¼­Æ÷£¨Èç “´«Ææ WIL ¹¤¾ß”£©´ò¿ª£º
ÕÒµ½·þÎñ¶ËButton.iniÖÐÉèÖõÄIconIndexÊýÖµ£¨Èç 302£©£¬È·ÈϸÃË÷ÒýλÖÃÓÐÓÐЧͼ±ê£¨·Ç¿Õ°×£©£»
Èôͼ±ê¿Õ°×£¬½«×¼±¸ºÃµÄ°´Å¥Í¼±ê£¨½¨Òé³ß´ç 32×32 ÏñËØ£¬BMP ¸ñʽ£©µ¼Èë¸ÃË÷ÒýλÖ㬱£´æItem.wilÎļþ¡£
µ÷Õû¿Í»§¶Ë½çÃæ²¼¾Ö£¨¿ÉÑ¡£©
Èô°´Å¥Î»ÖÃÆ«ÒÆ£¨È糬³öÆÁÄ»£©£¬ÐèÐ޸Ŀͻ§¶ËMir\Config\UIConfig.iniÎļþ£¨²¿·ÖÒýÇæÎªInterface.ini£©£º
ËÑË÷ “CustomButton” ¹Ø¼ü´Ê£¬ÕÒµ½¶ÔÓ¦°´Å¥ ID£¨Èç CustomButton1£©µÄPosXºÍPosY²ÎÊý£¬Óë·þÎñ¶ËButton.ini±£³ÖÒ»Ö£»
±£´æÎļþºó£¬¹Ø±Õ¿Í»§¶ËÖØÐÂÆô¶¯£¬È·±£°´Å¥ÔÚ½çÃæÏÔʾλÖÃÕýÈ·¡£
Èý¡¢NPC ½Å±¾°ó¶¨£º¹ØÁª°´Å¥´¥·¢Âß¼­
×Ô¶¨Òå°´Å¥µÄCommandÃüÁîÐèÓë NPC ½Å±¾°ó¶¨£¬²ÅÄÜʵÏÖµã»÷°´Å¥ºó´¥·¢ NPC ¹¦ÄÜ£¬²½ÖèÈçÏ£º
È·¶¨Ä¿±ê NPC ±àºÅÓë½Å±¾Îļþ
Ê×ÏÈÔÚ·þÎñ¶ËMir200\Envir\NPCsÎļþ¼ÐÖУ¬ÕÒµ½Ä¿±ê NPC µÄ½Å±¾Îļþ£¨ÈçÐÂÊÖ´åNPC.txt£©£¬²é¿´¸Ã NPC µÄ±àºÅ£º
NPC ½Å±¾Ê×ÐÐͨ³£±ê×¢±àºÅ£¬¸ñʽΪ#1001 ÐÂÊÖ´å´å³¤ 320 330 ÐÂÊִ壨# ºóÊý×Ö 1001 ¼´Îª NPC ±àºÅ£¬ÐèÓë·þÎñ¶ËButton.iniµÄCommand²ÎÊýÖÐ “1001” Ò»Ö£©¡£
±àд°´Å¥´¥·¢µÄ NPC ½Å±¾Âß¼­
ÔÚÄ¿±ê NPC µÄ½Å±¾ÎļþÖУ¬Ìí¼Ó@CallNPC´¥·¢¶Î£¬Ê¾ÀýÈçÏ£¨ÊµÏÖ “µã»÷°´Å¥→NPC ¶Ô»°→µÀ¾ß¶Ò»»” ¹¦ÄÜ£©£º
#1001 ÐÂÊÖ´å´å³¤ 320 330 ÐÂÊÖ´å
[@Main]
»¶Ó­À´µ½ÐÂÊִ壡\
<ÈÎÎñ½ÓÈ¡/@TaskAccept>\
<µÀ¾ß¶Ò»»/@ItemExchange>\

; ×Ô¶¨Òå°´Å¥´¥·¢µÄ½Å±¾¶Î£¨Óë·þÎñ¶ËButton.iniµÄCommand¶ÔÓ¦£©
[@CallNPC 1001]
#ACT
GOTO @ItemExchange ; Ö±½ÓÌø×ªÖÁ“µÀ¾ß¶Ò»»”¹¦ÄÜ£¬ÎÞÐèÊÖ¶¯µã»÷NPC¶Ô»°

[@ItemExchange]
#IF
CHECKITEM ÐÂÊÖ±Ò 10 ; ¼ì²éÊÇ·ñÓÐ10¸öÐÂÊÖ±Ò
#ACT
TAKE ÐÂÊÖ±Ò 10
GIVE ³õ¼¶Ò©Ë® 5 ; ¶Ò»»5Æ¿³õ¼¶Ò©Ë®
SENDMSG 7 ³É¹¦ÓÃ10¸öÐÂÊÖ±Ò¶Ò»»5Æ¿³õ¼¶Ò©Ë®£¡
#ELSE
SENDMSG 7 ÐÂÊÖ±Ò²»×ã10¸ö£¬ÎÞ·¨¶Ò»»£¡

½Å±¾ËµÃ÷£º[@CallNPC 1001]Êǰ´Å¥´¥·¢µÄÈë¿Ú£¬Í¨¹ýGOTOÃüÁîÖ±½ÓÌø×ªÖÁ NPC ÏÖÓй¦ÄܶΣ¬¼õÉÙ²Ù×÷²½Öè¡£
ÑéÖ¤½Å±¾Óï·¨ÕýÈ·ÐÔ
±£´æ NPC ½Å±¾Îļþºó£¬´ò¿ªÒýÇæ¿ØÖÆÆ÷µÄ “½Å±¾¼ì²é” ¹¤¾ß£¨GOM ÒýÇæÔÚ “¸¨Öú¹¤¾ß” ½çÃæ£¬HERO ÒýÇæÔÚ “½Å±¾¹ÜÀí” ½çÃæ£©£¬Ñ¡Ôñ¸ÕÐÞ¸ÄµÄ NPC ½Å±¾Îļþ£¬µã»÷ “¼ì²éÓï·¨”£º
ÈôÌáʾ “Óï·¨ÕýÈ·”£¬Ôò½Å±¾¿ÉÕý³£Ö´ÐУ»
ÈôÌáʾ “ÃüÁî´íÎ󔣨Èç CHECKITEM ƴд´íÎ󣩣¬Ðè·µ»Ø½Å±¾ÎļþÐÞÕýºóÖØÐ¼ì²é¡£
ËÄ¡¢²âÊÔÑéÖ¤£ºÈ·±£°´Å¥´¥·¢Õý³£
Íê³ÉÅäÖÃÓë½Å±¾°ó¶¨ºó£¬Ðèͨ¹ý¿Í»§¶Ë²âÊÔ¹¦ÄÜÊÇ·ñÉúЧ£º
Æô¶¯·þÎñ¶ËÓë¿Í»§¶Ë
È·ÈÏ·þÎñ¶ËLoginGate¡¢GameGate¡¢DBServer¾ùÕý³£Æô¶¯£¬Æô¶¯¿Í»§¶Ë²¢µÇ¼½ÇÉ«£¨µÈ¼¶ÐèÂú×ã°´Å¥ShowLevelÉèÖã¬Èç 1 ¼¶¼°ÒÔÉÏ£©¡£
´¥·¢×Ô¶¨Òå°´Å¥²âÊÔ
ÔÚ¿Í»§¶Ë½çÃæÕÒµ½ÐÂÔöµÄ “¿ìËÙ¶Ò»»” °´Å¥£¨Î»ÖÃÓëButton.iniµÄPosX/PosYÒ»Ö£©£¬µã»÷°´Å¥£»
Õý³£Çé¿ö£ºµã»÷ºóÖ±½Ó´¥·¢ NPC µÄ “µÀ¾ß¶Ò»»” Âß¼­£¬ÈôÐÂÊÖ±Ò×ã¹»£¬±³°üÖлáÐÂÔö³õ¼¶Ò©Ë®£¬Í¬Ê±ÊÕµ½ÏµÍ³Ìáʾ£»
Òì³£Çé¿ö£ºµã»÷ÎÞ·´Ó¦£¬Ðè¼ì²éButton.iniµÄCommandÊÇ·ñÕýÈ·£¨Èç NPC ±àºÅÊÇ·ñÓë½Å±¾Ò»Ö£©¡¢½Å±¾Óï·¨ÊÇ·ñÓÐÎó¡£
³£¼ûÎÊÌâÅŲé
°´Å¥²»ÏÔʾ£º¼ì²é¿Í»§¶ËItem.wilµÄIconIndexÊÇ·ñÓÐͼ±ê¡¢·þÎñ¶ËButton.iniµÄShowLevelÊÇ·ñµÍÓÚ½ÇÉ«µÈ¼¶£»
½Å±¾²»´¥·¢£ºÈ·ÈÏ[@CallNPC 1001]µÄ NPC ±àºÅÓë°´Å¥CommandÖеıàºÅÒ»Ö£¬Çҽű¾ÒÑͨ¹ýÓï·¨¼ì²é£»
λÖÃÆ«ÒÆ£ºÍ¬²½Ð޸ķþÎñ¶ËButton.iniÓë¿Í»§¶ËUIConfig.iniµÄPosX/PosY£¬ÖØÐÂË¢ÐÂÅäÖá£
Îå¡¢×¢ÒâÊÂÏ±ÜÃâ²Ù×÷ʧÎó
°´Å¥ ID ΨһÐÔ
ÐÂÔö°´Å¥Ê±£¬[CustomButtonX]µÄ ID£¨X£©Ðè´Ó 1 ¿ªÊ¼µÝÔö£¬±ÜÃâÓëÒÑÓа´Å¥ ID ÖØ¸´£¨¿ÉÔÚButton.iniÖв鿴ÒÑÓà ID£©£¬Öظ´»áµ¼ÖºóÌí¼ÓµÄ°´Å¥Ê§Ð§¡£
ÒýÇæ°æ±¾ÊÊÅä
²»Í¬ÒýÇæµÄButton.ini²ÎÊýÃû³Æ¿ÉÄÜÂÔÓвîÒ죨Èç HERO ÒýÇæÓÃBtnPosXÌæ´úPosX£©£¬ÈôÕÒ²»µ½¶ÔÓ¦²ÎÊý£¬¿ÉÔÚ·þÎñ¶Ë¸ùĿ¼ËÑË÷ “°´Å¥ÅäÖÃ˵Ã÷” Îĵµ£¨Í¨³£ÃüÃûΪButtonHelp.txt£©¡£
½Å±¾ÃüÁî¼æÈÝÐÔ
±àд NPC ½Å±¾Ê±£¬ÐèʹÓõ±Ç°ÒýÇæÖ§³ÖµÄÃüÁÈç GOM ÒýÇæÖ§³ÖGOTO£¬²¿·ÖÀϾÉÒýÇæÐèÓÃ#GOTO£©£¬±ÜÃâÒòÃüÁî²»¼æÈݵ¼Ö½ű¾ÎÞ·¨Ö´ÐУ¬¿É²Î¿¼ÒýÇæ×Ô´øµÄ “½Å±¾ÃüÁîÊֲᔣ¨ÔÚMir200\Envir\HelpÎļþ¼ÐÖУ©¡£
×ܽá
×Ô¶¨Òå°´Å¥´¥·¢ NPC ½Å±¾µÄºËÐÄÊÇ “·þÎñ¶Ë²ÎÊý¶¨°´Å¥→¿Í»§¶Ëͬ²½ÏÔ°´Å¥→½Å±¾°ó¶¨Êµ¹¦ÄÜ”£º
·þÎñ¶ËButton.ini¶¨Òå°´Å¥µÄλÖᢴ¥·¢ÃüÁÊǹ¦ÄÜ»ù´¡£»
¿Í»§¶Ëͬ²½Í¼±êÓë½çÃæÅäÖã¬È·±£°´Å¥¿É¼û¿Éµã£»
NPC ½Å±¾ÖÐÌí¼Ó@CallNPC´¥·¢¶Î£¬¹ØÁª°´Å¥Óë¾ßÌ幦ÄÜ¡£
°´´ËÁ÷³Ì²Ù×÷£¬¿É¿ìËÙʵÏÖ×Ô¶¨Òå°´Å¥µ÷Óà NPC ¹¦ÄÜ£¬¼õÉÙ½ÇÉ«²Ù×÷²½Ö裬ÌáÉýÌåÑé¡£ÈôÐèÌí¼Ó¶à¸ö°´Å¥£¬Ö»ÐèÖØ¸´ “ÐÂÔöÅäÖöÎ→ͬ²½¿Í»§¶Ë→°ó¶¨½Å±¾” ²½Ö裬עÒâ±£³Ö ID ÓëÃüÁîµÄΨһÐÔ¼´¿É¡£