@@ -8,9 +8,9 @@ _G["ADDONS"][author] = _G["ADDONS"][author] or {};
88_G [" ADDONS" ][author ][addonName ] = _G [" ADDONS" ][author ][addonName ] or {};
99local g = _G [" ADDONS" ][author ][addonName ];
1010
11- local version = ' 1.4.3' ;
12-
11+ local version = ' 1.4.5' ;
1312
13+ local debug_flg = false ;
1414
1515-- ライブラリ読み込み
1616local acutil = require (' acutil' );
@@ -21,6 +21,8 @@ g.settingsDirLoc = string.format("../addons/%s", addonNameLower);
2121g .settingsFileLoc = string.format (" %s/settings.json" , g .settingsDirLoc );
2222g .timerlogFileLoc = string.format (" %s/timer.json" , g .settingsDirLoc );
2323
24+ g .debugFileLoc = string.format (" %s/debug.txt" , g .settingsDirLoc );
25+
2426g .DefaultSettings = {};
2527g .DefaultSettings .Position = {X = 400 , Y = 300 };
2628g .DefaultSettings .EnabledMaps = {};
@@ -436,6 +438,15 @@ function NOTICECROWD_HOOK_NOTICE_ON_MSG(frame, msg, argStr, argNum)
436438end
437439
438440function g .NOTICECROWD_NEW_NOTICE_ON_MSG (frame , msg , argStr , argNum )
441+ if debug_flg then
442+ local file ,err = io.open (g .debugFileLoc , " a" )
443+ if err then
444+ ui .SysMsg (" SAVE CHAT FAILED." );
445+ else
446+ file :write (argStr .. " \n " );
447+ file :close ();
448+ end
449+ end
439450 -- DEVELOPERCONSOLE_PRINT_TEXT("msg: "..msg.." argStr: "..argStr);
440451 if string.find (argStr ," AppearPCMonster" ) then
441452 NOTICECROWD_APPEARCROWD (argStr );
@@ -450,16 +461,37 @@ end
450461
451462function NOTICECROWD_APPEARCROWD (str )
452463 -- DEVELOPERCONSOLE_PRINT_TEXT("A Crowd of Followers Appeared");
464+
465+ -- if debug_flg then
466+ -- acutil.saveJSON(self.debugFileLoc, str);
467+ -- end
468+
453469 if (g .crowdKilled > 0 ) then
454470 g .crowdKilled = 0 ;
455471 g .crowdAll = 0 ;
456472 end
457473 g .crowdAll = g .crowdAll + g .CROWDBYMAP ;
458- local mapstr = string.gsub (str ," .*(@dicID.*%*%^).*" ," %1" );
459- local cmsg = " 追従者出現:" .. mapstr ;
460- table.insert (g .spawnmap , dictionary .ReplaceDicIDInCompStr (mapstr ));
461- table.insert (g .spawnmapID , mapstr );
462- CHAT_SYSTEM (cmsg );
474+ local mapstr = " " ;
475+ -- local mapstr = string.gsub(str,".*(@dicID.*%*%^).*","%1");
476+ local cmsg = " " ;
477+ if string.find (str , " %(.*,.*,.*%)" ) then
478+ -- 非常時 (文字列直打ち)
479+ mapstr = string.gsub (str ," .*AppearPCMonster.*$%*$name$%*$%(.*,.*,(.*)%)#@!" ," %1" );
480+ cmsg = " 追従者出現:" .. mapstr ;
481+ table.insert (g .spawnmap , mapstr );
482+ table.insert (g .spawnmapID , mapstr );
483+ CHAT_SYSTEM (cmsg );
484+ else
485+ mapstr = string.gsub (str ," .*AppearPCMonster.*$%*$name$%*$(.*)#@!" ," %1" );
486+ cmsg = " 追従者出現:" .. dictionary .ReplaceDicIDInCompStr (mapstr );
487+ table.insert (g .spawnmap , dictionary .ReplaceDicIDInCompStr (mapstr ));
488+ if string.find (mapstr ," dicID" ) then
489+ table.insert (g .spawnmapID , mapstr );
490+ else
491+ table.insert (g .spawnmapID , dictionary .ReplaceDicIDInCompStr (mapstr ));
492+ end
493+ CHAT_SYSTEM (cmsg );
494+ end
463495 if g .settings .ShowPTChat then
464496 ui .Chat (" /p " .. cmsg );
465497 end
@@ -482,12 +514,24 @@ function NOTICECROWD_APPEARCROWD(str)
482514 g :UpdateFrame ();
483515end
484516
485- function NOTICECROWD_DEBUG_NOTICE_MSG ()
486- local argStr = " !@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20150714_011746$*^#@!" ;
517+ function NOTICECROWD_DEBUG_NOTICE_MSG (num )
518+ local argStr = " !@#$AppearPCMonster$*$name$*$(바이덴티스 신당,Videntis Shrine,バイデンティス神堂)#@!"
519+ if num == 1 then
520+ argStr = " !@#$AppearPCMonster{name}$*$name$*$노브리어 숲#@!" ;
521+ elseif num == 2 then
522+ argStr = " !@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20161012_023686$*^#@!" ;
523+ end
524+ -- !@#$AppearPCMonster{name}$*$name$*$카듀멜 절벽#@!
525+ -- !@#$AppearPCMonster{name}$*$name$*$별의 탑 1층#@!
526+ -- !@#$AppearPCMonster{name}$*$name$*$아르커스 숲#@!
527+ -- !@#$AppearPCMonster{name}$*$name$*$대지의 요새 거주구역#@!
528+ -- "!@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20150714_011746$*^#@!";
487529 -- "!@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20161012_023686$*^#@!",
488530 -- "!@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20170418_027530$*^#@!",
489531 -- "!@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20150804_014154$*^#@!"
490532 NOTICECROWD_APPEARCROWD (argStr );
533+ -- argStr = "!@#$AppearPCMonster{name}$*$name$*$@dicID_^*$ETC_20161012_023686$*^#@!";
534+ -- NOTICECROWD_APPEARCROWD(argStr);
491535end
492536
493537function NOTICECROWD_GET_DIFF_TIME ()
@@ -531,6 +575,8 @@ function NOTICECROWD_CHECK_CROWD_DTIME(timediff)
531575 g .spawnstarttime = g :AddHour (tonumber (g .lasttime .hour ), 4 );
532576 g .spawnendtime = g :AddHour (tonumber (g .lasttime .hour ), 6 );
533577 g :SetTimerDesc (" 出現終了まで" );
578+ g .crowdKilled = 0 ;
579+ g .crowdAll = 0 ;
534580 elseif timediff < 480 then
535581 remain_time = 480 - timediff ;
536582 g :SetTimerDesc (" 出現まで(一回見逃し)" );
0 commit comments