chenhui540

角色反復過同一地圖後導致的怪物癡呆

發表於 2023-5-10 10:48:47
chenhui540 發表於 2023-5-10 10:48:47 | 顯示全部樓層 |閱讀模式
1.png
2.png
3.png


搜索:

    public void leaveMap(MapleMap map) {
        controlledLock.writeLock().lock();
        visibleMapObjectsLock.writeLock().lock();
        try {
            for (MapleMonster mons : controlled) {
                if (mons != null) {
                    mons.setController(null);
                    mons.setControllerHasAggro(false);
                    map.updateMonsterController(mons);
                }
            }


替換:

    public void leaveMap(MapleMap map) {
        controlledLock.writeLock().lock();
        visibleMapObjectsLock.writeLock().lock();
        try {
            for (final MapleMapObject monstermo : map.getAllMonstersThreadsafe()) {
                final MapleMonster mons = (MapleMonster) monstermo;
                if (mons != null) {
                    mons.setController(null);
                    mons.setControllerHasAggro(false);
                    map.updateMonsterController(mons);
                }
            }


不少版本會出現角色反復過同一地圖後,在沒有其它玩家更新控制權的情況下,會導致圖內的的怪物卡停的問題。
瀏覽 2527 回復 0

您需要登錄後才可以回帖 登錄 | 註冊會員

返回頂部