PandasWS / Pandas

熊猫模拟器 - 基于 rAthena 构建的中文仙境传说模拟器(欢迎加入QQ交流群:928171346)
https://pandas.ws
GNU General Public License v3.0
154 stars 79 forks source link

过滤器事件必须存在才允许执行, 避免程序汇报 nullpo 空指针 (感谢 "山有" 反馈) #662

Closed CairoLee closed 1 year ago

CairoLee commented 1 year ago

问题描述

当进入一个 npc 开启的聊天室时,若该 npc 没有定义 OnPCInChatroomFilter 标签,会导致地图服务器显示:

--- nullpo info --------------------------------------------
src\map\npc.cpp:6621: in func `npc_event_rightnow'

问题原因

程序判断不严格,调整程序逻辑在执行指定 NPC 下的某个具体过滤器事件时,若指定的事件不存在则不执行后续逻辑

重现方法

prontera,150,150,3  script  tester#al   123,{
    donpcevent "tester#al::On111";
end;
On111:
    waitingroom "123",10;
end;
}