查看: 935|回复: 2

[待解决] GMS111 飞行地图移动时间结束后会返回起始地图

该用户从未签到

中级会员

枫币
523
威望
6
贡献
20
在线时间
100 小时
注册时间
2018-7-12
发表于 2022-6-3 13:22:09 | 显示全部楼层 |阅读模式
本帖最后由 chenhui540 于 2022-6-3 13:30 编辑



<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<imgdir name="200110000.img">
    <imgdir name="info">
        <int name="version" value="10" />
        <int name="cloud" value="0" />
        <int name="town" value="1" />
        <float name="mobRate" value="1.0" />
        <int name="returnMap" value="200000100" />
        <string name="mapMark" value="Ellinia" />
        <int name="forcedReturn" value="104020110" />
        <int name="hideMinimap" value="1" />
        <int name="fieldLimit" value="107390207" />
        <int name="VRTop" value="-360" />
        <int name="VRLeft" value="-520" />
        <int name="VRBottom" value="360" />
        <int name="VRRight" value="520" />
        <int name="fieldType" value="6" />
        <string name="bgm" value="Bgm04/UponTheSky" />
        <int name="swim" value="0" />
        <int name="fly" value="1" />
        <int name="needSkillForFly" value="0" />
        <int name="noMapCmd" value="0" />
        <string name="onFirstUserEnter" value="" />
        <string name="onUserEnter" value="" />
        <int name="timeLimit" value="240" />
        <int name="ridingMove" value="3" />
        <int name="noLanding" value="1" />
        <int name="noCancelSkill" value="1" />
        <string name="fieldScript" value="" />
    </imgdir>
    <imgdir name="back">
        <imgdir name="0">




GMS111 飞行地图移动时间结束后会返回起始地图    如果在不修改wz文件的情况下     需要给予什么样的条件   才能 正常 到达目的地
我有尝试过 用语法
                cm.warp(200110000, 0);
                cm.getPlayer().startMapTimeLimitTask(60, cm.getChannelServer().getMapFactory().getMap(200000111));

但是地图移动时间结束后 无论你在哪里都会返回起始地图




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  • TA的每日心情
    无聊
    2023-12-29 18:08
  • 签到天数: 83 天

    [LV.6]常住居民II

    版主

    枫币
    4285
    威望
    8
    贡献
    63
    在线时间
    539 小时
    注册时间
    2019-3-1
    发表于 2022-6-4 10:28:53 | 显示全部楼层
    只保留

    1. cm.warp(200110000, 0);
    复制代码

    该用户从未签到

    中级会员

    枫币
    523
    威望
    6
    贡献
    20
    在线时间
    100 小时
    注册时间
    2018-7-12
     楼主| 发表于 2022-6-4 15:39:35 | 显示全部楼层
    cm.warp(200110000, 0);

    只保留地图传送的     地图倒计时间结束的时候  只会返回 起始地图!  不能移动到目标地图

    我有修改源码暂时处理掉问题了   

                case 200110000 ->                 {
                        // 金银岛->天空之城
                        int travelTime = ChannelServer.getInstance(channel).getTransportationTime(2 * 60 * 1000); // [2 min]
                        chr.getClient().getSession().write(CField.getClock(travelTime / 1000));
                        TimerManager.getInstance().schedule(() -> {
                            if (chr.getMapId() == 200110000) {
                                chr.changeMap(200000111, 1);
                            }
                        }, travelTime);
                    }
                case 200110001 ->                 {
                        // 天空之城->金银岛
                        int travelTime = ChannelServer.getInstance(channel).getTransportationTime(2 * 60 * 1000); // [2 min]
                        chr.getClient().getSession().write(CField.getClock(travelTime / 1000));
                        TimerManager.getInstance().schedule(() -> {
                            if (chr.getMapId() == 200110001) {
                                chr.changeMap(104020110, 1);
                            }
                        }, travelTime);
                    }


    但是 我就想弄清楚 为什么 时间结束后 不会传送到目标地图 反而回传到 起始地图  到底缺少了什么内容!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    枫叶物语即使倒闭也绝对不会变质
    Copyright © 2001-2013 Discuz Team. Powered by Discuz! X3.5 |网站地图 | 本站已运行: