查看: 1309|回复: 13

传送进地图需要解卡

[复制链接]

该用户从未签到

1

主题

16

回帖

65

积分

注册会员

Rank: 2

积分
65
发表于 2024-7-17 08:28:12 | 显示全部楼层 |阅读模式
请问下有些地图传送进去,角色需要解卡才行,要不然NPC点不了,怪也打不死,解卡一下就恢复正常,这是情况怎么弄
回复

使用道具 举报

  • TA的每日心情

    4 小时前
  • 签到天数: 122 天

    [LV.7]常住居民III

    43

    主题

    102

    回帖

    2447

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    2447
    发表于 2024-7-18 10:08:29 | 显示全部楼层
    传送点卡号
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    16

    回帖

    65

    积分

    注册会员

    Rank: 2

    积分
    65
     楼主| 发表于 2024-7-18 10:15:47 | 显示全部楼层

    请问要怎么弄呢?我用指令飞进去就不会,NPC传送进去就要解卡
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-8-16 14:35
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    4

    主题

    29

    回帖

    401

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    401
    发表于 2024-7-19 17:30:25 | 显示全部楼层
    其中一个原因可能是负责传送的npc传送的时候没有释放资源, 找到传送的npc  找到cm.warp函数, 在这一行前面加一个cm.dispose()应该可以解决
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    16

    回帖

    65

    积分

    注册会员

    Rank: 2

    积分
    65
     楼主| 发表于 2024-7-20 15:20:48 | 显示全部楼层
    YogaLyu 发表于 2024-7-19 17:30
    其中一个原因可能是负责传送的npc传送的时候没有释放资源, 找到传送的npc  找到cm.warp函数, 在这一行前面 ...

    脚本传送warp末尾有cm.dispose()结尾,,
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    16

    回帖

    65

    积分

    注册会员

    Rank: 2

    积分
    65
     楼主| 发表于 2024-7-20 15:23:40 | 显示全部楼层
    YogaLyu 发表于 2024-7-19 17:30
    其中一个原因可能是负责传送的npc传送的时候没有释放资源, 找到传送的npc  找到cm.warp函数, 在这一行前面 ...

    var maps = Array(952000000, 952010000, 952020000, 952030000, 952040000);
    var minLevel = Array(20, 45, 50, 55, 60);
    var maxLevel = Array(70, 70, 70, 70, 70);

    function start() {
        var selStr = "妳想進入哪個地方?\r\n\r\n#b";
        for (var i = 0; i < maps.length; i++) {
            selStr += "#L" + i + "##m" + maps + "# (怪物 Lv." + minLevel + " - " + maxLevel + ")#l\r\n";
        }
        cm.sendSimple(selStr);
    }

    function action(mode, type, selection) {
        if (mode == 1 && selection >= 0 && selection < maps.length) {
            if (cm.getParty() == null || !cm.isLeader()) {
                cm.sendOk("妳想要進入的地區是組隊遊戲區域。可以通過#b隊長#k入場。");
            } else {
                var party = cm.getParty().getMembers().iterator();
                var next = true;
                while (party.hasNext()) {
                    var cPlayer = party.next();
                    if (cPlayer.getLevel() < minLevel[selection] || cPlayer.getLevel() > maxLevel[selection] || cPlayer.getMapid() != cm.getMapId() || cPlayer.isCs() || cPlayer.isHp0() || !cPlayer.isOnline()) {
                        next = false;
                    }
                }
                if (!next) {
                    cm.sendOk("請確定妳組員都在該地圖,並且都在等級範圍內。");
                } else {
                    var em = cm.getEventManager("MonsterPark");
                    if (em == null || em.getInstance("MonsterPark" + maps[selection]) != null) {
                        cm.sendOk("怪物公園裏面已經有人了。");
                    } else {
                        if (cm.givePartyHaveItem(4001514, 1)) {
                            cm.givePartyItems(4001514, -1);
                            em.startInstance_Party("" + maps[selection], cm.getPlayer());
                        } else {
                            cm.sendOk("有隊友沒有門票。");
                        }
                    }
                }
            }
        }
        cm.dispose();
    }
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-8-16 14:35
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    4

    主题

    29

    回帖

    401

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    401
    发表于 2024-7-20 16:52:16 | 显示全部楼层
    a45627135 发表于 2024-7-20 15:23
    var maps = Array(952000000, 952010000, 952020000, 952030000, 952040000);
    var minLevel = Array(20,  ...

    你哪来的warp- - 这是调用事件, 卡了就是事件的脚本有问题
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    16

    回帖

    65

    积分

    注册会员

    Rank: 2

    积分
    65
     楼主| 发表于 2024-7-20 23:34:08 | 显示全部楼层
    YogaLyu 发表于 2024-7-20 16:52
    你哪来的warp- - 这是调用事件, 卡了就是事件的脚本有问题

    var minPlayers = 1;

    function init() {
    }

    function setup(mapid) {
        var eim = em.newInstance("MonsterPark" + mapid);
            var map = parseInt(mapid);
            var max = (map / 1000000 == 952 ? 6 : 6);
            eim.setProperty("max", "" + max);
            eim.setProperty("boss", "0");
            for (var i = 0; i < max; i++) {
                eim.setInstanceMap(map + (i * 100)).resetFully();
                //eim.setInstanceMap(map + (i * 100)).resetPQ(level);
                eim.setProperty("map" + i, "" + (map + (i * 100)));
            }
        eim.startEventTimer(1200000); //20 mins
        return eim;
    }

    function playerEntry(eim, player) {
        var map = eim.getMapInstance(0);
        player.changeMap(map, map.getPortal(0));
    }

    function playerRevive(eim, player) {
    }

    function scheduledTimeout(eim) {
        end(eim);
    }

    function changedMap(eim, player, mapid) {
        for (var i = 0; i < parseInt(eim.getProperty("max")); i++) {
            if (mapid == parseInt(eim.getProperty("map" + i))) {
                return;
            }
        }
            eim.unregisterPlayer(player);

            eim.disposeIfPlayerBelow(0, 0);
    }

    function playerDisconnected(eim, player) {
        return 0;
    }

    function monsterValue(eim, mobId) {
        return 1;
    }

    function playerExit(eim, player) {
        eim.unregisterPlayer(player);

            eim.disposeIfPlayerBelow(0, 0);
    }

    function end(eim) {
        eim.disposeIfPlayerBelow(100, 951000000);
    }

    function clearPQ(eim) {
        end(eim);
    }

    function allMonstersDead(eim) {
    }

    function leftParty (eim, player) {
        // If only 2 players are left, uncompletable:
            end(eim);
    }
    function disbandParty (eim) {
            end(eim);
    }
    function playerDead(eim, player) {}
    function cancelSchedule() {}
    事件脚本看不懂了,麻烦赐教一下。
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-8-16 14:35
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    4

    主题

    29

    回帖

    401

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    401
    发表于 2024-7-21 17:58:17 | 显示全部楼层
    a45627135 发表于 2024-7-20 23:34
    var minPlayers = 1;

    function init() {

    你传送以后到的地图id是多少, 然后传送以后有没有倒计时
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    16

    回帖

    65

    积分

    注册会员

    Rank: 2

    积分
    65
     楼主| 发表于 2024-7-22 08:08:25 | 显示全部楼层
    YogaLyu 发表于 2024-7-21 17:58
    你传送以后到的地图id是多少, 然后传送以后有没有倒计时

    952000000, 952010000, 952020000, 952030000, 952040000这几个都是传送进去的地图,只是分等级进去,,传送进去前面的图没有倒计时,走到和最后一个地图才有倒计时
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表