996´«ÆæÈý¶ËÒýÇæ£¨996m2 / GOMϵÈý¶Ë£©µÄÈÎÎñÄ£¿é·ÖÁ½²ã£ºÒ»²ãÊÇ×óÉϽÇÈÎÎñÁбíչʾ²ã£¬ÓÉ cfg_newtask.xls + ÒýÇæÄÚÖýӿڿØÖÆ£»ÁíÒ»²ãÊÇÒµÎñÂß¼²ã£¬¿¿ QF£¨QFunction-0.txt£©¡¢QuestDiary¡¢LUA ºó¶Ë¹²Í¬ÊµÏÖ½ÓÈ¡¡¢½ø¶È¡¢Ìá½»¡¢½±Àø¡¢ÖØÖá£Ö»¸ÄÁÐ±í²»Ð´ÒµÎñ£¬ÈÎÎñÀ¸ÄÜÏÔʾµ«µãÏÂȥû·´Ó¦£»Ö»Ð´ÒµÎñ²»½Ó cfg_newtask.xls£¬×óÉϽDz»ÁÁÈÎÎñÌõ¡£Á½Ì×±ØÐë´òͨ¡£
Ò»¡¢ÈÎÎñϵͳºËÐÄÎļþÓë·¾¶
• Mir200\Envir\cfg_newtask.xls£ºÈÎÎñÁбíÅäÖÃ±í£¨ID¡¢±êÌâ¡¢½Óȡǰ/½øÐÐÖÐ/Íê³Éչʾ¡¢ÌØÐ§¡¢ÅÅÐò£©
• Mir200\Envir\QFunction-0.txt£¨QF£©£º¹Ò picktask / changetask / clicknewtask / completetask / deletetask µÈ¹³×Ó
- Mir200\Envir\QuestDiary\ÈÎÎñϵͳ\*.txt£º¾ßÌåÒµÎñ½Å±¾£¨½ÓÈ¡¡¢É±¹Ö¼ÆÊý¡¢Ìá½»¡¢½±Àø£©
• Mir200\Envir\LuaScripts\*.lua »òÒýÇæ LUAScripts Ŀ¼£º¸´ÔÓÂß¼Óà callscript(actor, "Îļþ·¾¶", "@±êÇ©") µ÷ TXT ¶Î
- Mir200\Envir\MonItems.txt£º°ó¶¨¹ÖÎï»÷ɱ´¥·¢ @¶Î ×ö½ø¶È×ÔÔö
¶þ¡¢cfg_newtask.xls ±í½á¹¹Ð´·¨
ÁÐ˳Ðò£ºÈÎÎñID / TaskTitle / Pickinfo£¨½Óȡǰչʾ£© / Haveinfo£¨½øÐÐÖУ¬Ö§³Ö %s ռ룩 / Completeinfo£¨Íê³Éչʾ£© / EffectId£¨ÌØÐ§£¬¸ñʽ 0#5056 | 1#5055£¬5056Îʺš¢5055¸Ð̾ºÅ£© / order£¨ÅÅÐò£¬Ô½Ð¡Ô½¿¿ÉÏ£©
ʾÀýÐУº
1 | <font color='#22ff22'>ÐÂÊÖÊÔÁ¶ %1</font> | ÕÒÐÂÊÖ´åÏòµ¼½ÓÈ¡ÈÎÎñ | <font color='#ff2222'>»÷ɱµ¾²ÝÈË¡¾%s¡¿/10 ²É¼¯¿óʯ¡¾%s¡¿/5</font> | <font color='#2222ff'>ÐÂÊÖÊÔÁ¶Íê³É</font> | 0#5056 | 1
%s ¶ÔÓ¦ NEWCHANGETASK ÈÎÎñID ״̬1 ״̬2 ... ÀïµÄ״̬±êʶ£¬°´Ë³ÐòÌî³ä£¬×î¶àÖ§³Ö¶à¸ö %s¡£
Èý¡¢QF ¹³×Ó¹ÒÔØ£¨±ê׼д·¨£©
-- QFunction-0.txt ÄÚ Lua ¶Î»ò TXT ¶Î×¢²á
function picktask(actor)
callscript(actor, "../QuestDiary/ÈÎÎñϵͳ/´¥·¢_½ÓÊÜ", "@½ÓÊÜÈÎÎñ´¦Àí")
end
function changetask(actor)
Renwu_Refresh(actor) -- ×Ô¶¨Òåˢк¯Êý»òÖ±´ï½Å±¾¶Î
end
function clicknewtask(actor)
callscript(actor, "../QuestDiary/ÈÎÎñϵͳ/µã»÷´¦Àí", "@µã»÷ÈÎÎñ¼ÌÐø")
end
function completetask(actor)
callscript(actor, "../QuestDiary/ÈÎÎñϵͳ/Íê³É´¦Àí", "@Íê³ÉÈÎÎñ´¦Àí")
end
function deletetask(actor)
callscript(actor, "../QuestDiary/ÈÎÎñϵͳ/ɾ³ý´¦Àí", "@ɾ³ýÈÎÎñ´¦Àí")
end
ÒýÇæÔÚÍæ¼ÒµãÈÎÎñÀ¸¡¢½ÓÈÎÎñ¡¢Ë¢Ð½ø¶Èʱ»Øµ÷ÕâЩº¯Êý£»²»¹Ò¹³×Ó£¬×óÉϽÇÈÎÎñÌõµãÁËû·´Ó¦¡£
ËÄ¡¢NPC ½ÓÈ¡+ÒµÎñ½Å±¾£¨QuestDiary ʵս£©
Îļþ£ºEnvir\QuestDiary\ÈÎÎñϵͳ\ÐÂÊÖÊÔÁ¶.txt
[@Main]
ÐÂÊÖÊÔÁ¶Ïòµ¼\ \
<½ÓÊÜÐÂÊÖÊÔÁ¶/@AcceptTask> <È¡Ïû/@Exit>\
[@AcceptTask]
#IF
EQUAL U200 1
#ACT
SENDMSG 6 ÄãÒѽӹýÐÂÊÖÊÔÁ¶£¬±ðÖØ¸´½Ó£¡
CLOSE
#IF
CHECKVAR HUMAN ÐÂÊÖÊÔÁ¶ 1
#ACT
SENDMSG 6 ÈÎÎñ½øÐÐÖУ¬È¥É±10Ö»µ¾²ÝÈË¡¢²É5¿éÍ¿ó£¡
CLOSE
#ELSE
#ACT
SET [HUMAN ÐÂÊÖÊÔÁ¶] 1
MOV U200 1
MOV S$ÈÎÎñ½±Àø ÐÂÊÖÊÔÁ¶
NEWPICKTASK 1
NEWCHANGETASK 1 0 0
SENDMSG 6 ÒѽÓÈ¡¡¾ÐÂÊÖÊÔÁ¶¡¿£º»÷ɱµ¾²ÝÈË10/10£¬²É¼¯Í¿ó5/5
ADDBUTTON 110 1 Navigation 110
CLOSE
[@KillScarecrow] ; MonItems.txt °óµ¾²ÝÈË KillScript=@KillScarecrow
#IF
CHECKVAR HUMAN ÐÂÊÖÊÔÁ¶ 1
#ACT
INC N$µ¾²ÝÈ˼ÆÊý 1
#IF
LARGE N$µ¾²ÝÈ˼ÆÊý 10
#ACT
MOV N$µ¾²ÝÈ˼ÆÊý 10
NEWCHANGETASK 1 <$STR(N$µ¾²ÝÈ˼ÆÊý)> <$STR(N$¿óʯ¼ÆÊý)>
SENDMSG 7 µ¾²ÝÈ˽ø¶ÈÒÑÂú£¬È¥²ÉÍ¿ó£¡
#ELSE
#ACT
NEWCHANGETASK 1 <$STR(N$µ¾²ÝÈ˼ÆÊý)> <$STR(N$¿óʯ¼ÆÊý)>
SENDMSG 7 µ¾²ÝÈ˽ø¶È£º<$STR(N$µ¾²ÝÈ˼ÆÊý)>/10
CLOSE
[@PickOre] ; ²É¿ó´¥·¢»òµØÍ¼Ê¼þ´¥·¢
#IF
CHECKVAR HUMAN ÐÂÊÖÊÔÁ¶ 1
CHECKITEM Í¿ó 1
#ACT
TAKE Í¿ó 1
INC N$¿óʯ¼ÆÊý 1
#IF
LARGE N$¿óʯ¼ÆÊý 5
#ACT
MOV N$¿óʯ¼ÆÊý 5
NEWCHANGETASK 1 <$STR(N$µ¾²ÝÈ˼ÆÊý)> <$STR(N$¿óʯ¼ÆÊý)>
SENDMSG 7 ¿óʯÒѹ»£¬»ØÏòµ¼½»ÈÎÎñ£¡
#ELSE
#ACT
NEWCHANGETASK 1 <$STR(N$µ¾²ÝÈ˼ÆÊý)> <$STR(N$¿óʯ¼ÆÊý)>
SENDMSG 7 Í¿ó½ø¶È£º<$STR(N$¿óʯ¼ÆÊý)>/5
CLOSE
[@SubmitTask]
#IF
CHECKVAR HUMAN ÐÂÊÖÊÔÁ¶ 1
LARGE N$µ¾²ÝÈ˼ÆÊý 9
LARGE N$¿óʯ¼ÆÊý 4
#ACT
SET [HUMAN ÐÂÊÖÊÔÁ¶] 2
NEWCOMPLETETASK 1
GIVE ½ð±Ò 5000
GIVE ³õ¼¶¾Ñ鵤 1
ADDEXP 5000
SENDMSG 6 ÐÂÊÖÊÔÁ¶Íê³É£¡½±Àø£º5000½ð±Ò¡¢³õ¼¶¾Ñ鵤x1¡¢5000¾Ñé
MOV N$µ¾²ÝÈ˼ÆÊý 0
MOV N$¿óʯ¼ÆÊý 0
CLOSE
#ELSE
#ACT
SENDMSG 6 ½ø¶ÈδÂú£¬µ¾²ÝÈË10 Í¿ó5 ²ÅÄÜÌá½»£¡
CLOSE
±äÁ¿ËµÃ÷£ºU200 Ϊ¸öÈ˱êʶ£¨½Óȡ״̬£©£¬HUMAN ÐÂÊÖÊÔÁ¶ ³Ö¾Ã»¯ÈÎÎñ״̬£¬N$µ¾²ÝÈ˼ÆÊý / N$¿óʯ¼ÆÊý ¼Ç¼½ø¶È£¬NEWPICKTASK / NEWCHANGETASK / NEWCOMPLETETASK Çý¶¯×óÉϽÇÁÐ±í¡£
Îå¡¢MonItems.txt °óɱ¹Ö´¥·¢
µ¾²ÝÈË 1 2 @KillScarecrow
Íæ¼Òÿɱһֻµ¾²ÝÈË£¬ÒýÇæ»Øµ÷ QuestDiary Àï @KillScarecrow£¬×ÔÔö½ø¶È²¢Ë¢ÁÐ±í¡£¸ÄÍê M2 Ö´ÐÐ @reloadnpc all »òÖØÔØ½Å±¾¡£
Áù¡¢LUA ºó¶Ë¸´ÔÓÈÎÎñʾÀý£¨Ã¿ÈÕÈÎÎñÖØÖã©
-- LuaScripts/daily_task.lua
function daily_reset(actor)
local day = os.date("%Y-%m-%d")
if GetVar(actor, "HUMAN ÿÈÕÈÎÎñÈÕÆÚ") ~= day then
SetVar(actor, "HUMAN ÿÈÕÈÎÎñÈÕÆÚ", day)
SetVar(actor, "HUMAN ÿÈÕ»÷ɱ", 0)
SetVar(actor, "HUMAN ÿÈղɼ¯", 0)
NEWDELETETASK(actor, 100)
callscript(actor, "../QuestDiary/ÈÎÎñϵͳ/ÿÈÕÈÎÎñ", "@InitDaily")
end
end
µÇ¼´¥·¢£¨QFunction-0.txt µÄ [@Login] »ò OnLogin Lua ¹³×Ó£©µ÷Óà daily_reset(actor)£¬ÊµÏÖ¿çÌìÖØÖá£
Æß¡¢³£ÓÃÒýÇæÈÎÎñÃüÁîËÙ²é
- NEWPICKTASK ÈÎÎñID£º½ÓÈ¡²¢Ð´Èë×óÉϽÇÁбí
• NEWCHANGETASK ÈÎÎñID ״̬1 ״̬2 ...£ºË¢Ð½øÐÐÖнø¶È£¬Ìî %s
• NEWCOMPLETETASK ÈÎÎñID£º±ê¼ÇÍê³É¡¢Áбí±äÍê³É̬
- NEWDELETETASK ÈÎÎñID£ºÒƳýÈÎÎñÌõ
• TASKTOPSHOW ÈÎÎñID£ºÖö¥Ö¸¶¨ÈÎÎñ
• OPENHYPERLINK Ãæ°åID 1£º´ò¿ªÈÎÎñרÓÃÃæ°å
- KILLMOBAPPOINT µØÍ¼ X Y ·¶Î§ ¹ÖÎïÃû|¹ÖÎïÃû£ºÈÎÎñÖ¸¶¨´ò¹Ö
• STOPAUTOATTACK£ºÍ£Ö¹×Ô¶¯¹¥»÷
• SETNPCEFFECT NPCID ÌØÐ§ID X Y / DELNPCEFFECT NPCID£ºNPC Í·¶¥ÎʺÅ/¸Ð̾ºÅ
• ADDBUTTON 110 1 Navigation 110£ºÈÎÎñµ¼º½°´Å¥
°Ë¡¢µ÷ÊÔÓëÅÅ´íÓ²µã
• cfg_newtask.xls ¸ÄÍê±ØÐëÖØÆô M2 »òÖØÔØÈÎÎñ±í£¬Èȸü²»ÉúЧ
• %s ÊýÁ¿±ØÐëÓë NEWCHANGETASK ״̬±êʶÊýÁ¿Ò»Ö£¬ÉÙÌîÏÔʾ¿Õ°×¡¢¶àÌî½Ø¶Ï
- callscript ·¾¶Ïà¶Ô Envir\QuestDiary£¬²»Ð´ .txt ºó׺£¬±êÇ©±ØÐë´æÔÚ·ñÔò±¨´í
• 996 ÒýÇæ TXT ½Å±¾²»Ö§³ÖǶÌ× #IF£¬¸´ÔÓ·Ö֧д LUA ·µ»Ø½á¹ûÔÙÓà #ACT CALL µ÷
- ±äÁ¿³åÍ»£ºÈÎÎñ״̬ͳһÓà HUMAN ǰ׺ + Ã÷È·ÃüÃû£¬±ðºÍ»îÔ¾¶È¡¢Ç©µ½ÏµÍ³¹²Óà N$1 S$1
• Èý¶Ë£¨PC/°²×¿/iOS£©±íÏÖÒ»Ö£¬µ«¿Í»§¶Ë²¹¶¡È± Navigation 110 °´Å¥×ÊԴʱ PC Õý³£¡¢ÊÖ»ú¶Ë²»ÏÔʾµ¼º½¼ýÍ·£¬Ðè²¹ Data/UI ×ÊÔ´
ÈÎÎñÄ£¿é±¾ÖʾÍÊÇ cfg_newtask.xls ¹ÜÏÔʾ + QF ¹³×Ó¹Üʼþ + QuestDiary/LUA ¹ÜÂß¼ + MonItems ¹Ü½ø¶È ËÄÌõÏß²¢ÆðÀ´£¬ÈÎÒâÒ»Ìõ¶ÏÁ´ÈÎÎñÌõ¾Í»á±äËÀÌõ¡£
´«Ææ996Èý¶ËÒýÇæÈÎÎñÄ£¿éʵս£ºcfg_newtaskÓëQuestDiary¹Ò½Å±¾È«Á÷³Ì²ð½â
À´Ô´£º
×÷Õߣº
µã»÷£º
½üÆÚ¸üÐÂ

