有做大型RPG或SLG游戏需求的朋友请进,有在线地图编辑器

seekPath就是传坐标点啊,跟点击无关。点击是把玩家的初始坐标系和点击的终点坐标系,丢到seekPath里进行寻路。如果你不想用点击,你可以选你自己要的初始坐标系和终点坐标系放到seekPath进行寻路。

是的大佬,我就是不知道我想点的那个坐标是什么 是不是可以寻路到达的地方,在网站上保存下来的没有坐标 只有[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]这样的,之后配合点击获取的鼠标坐标,给人物进行寻路,那么,我想让人物走到任意一个坐标点,那个坐标点我不知道,保存下来的文件里,没有坐标点集合

比如我想不点击 就让他走路到这里 或者其他某个点

你把的要走到的位置的坐标做为终点做寻路就可以啦。不用点击的。

var targetX;
var targetY;

var startPoint:Point = MapRoadUtils.instance.getWorldPointByPixel(this.player.node.x,this.player.node.y);
var targetPoint:Point = MapRoadUtils.instance.getWorldPointByPixel(targetX,targetY);

    var startNode:RoadNode = this._roadDic[startPoint.x + "_" + startPoint.y];
    var targetNode:RoadNode = this._roadDic[targetPoint.x + "_" + targetPoint.y];

    var roadNodeArr:RoadNode[] = this._roadSeeker.seekPath(startNode,targetNode); 

里面的targetX和targetY 就是你要走到地图的像素坐标。比如玩家想走到像素坐标(1000,1000)的位置。那么targetX = 1000,targetY = 1000,之后进行寻路得到的路径点列表roadNodeArr就是你要的数据,你把roadNodeArr所有的点用Graphic画线连在一起就可以了

嗯嗯,感谢丰富知识
其实我就是不知道要给的终点坐标点的坐标,就是我没有可以走的所有点的坐标集合,我随便给一个,可能不是他可以走的

mark!

嗯,原来这个就是所有点坐标 ,有没有判断某个坐标能不能走到的方法
var roadNodeArr:RoadNode[] = this._roadSeeker.seekPath(startNode,targetNode); //点击到障碍点不会行走 用这个就可以吗
for(var i:number = 0 ; i < len ; i++)
{
for(var j:number = 0 ; j < len2 ; j++)
{
value = mapData.roadDataArr[i][j];
dx = j;
dy = i;

            var node:RoadNode = MapRoadUtils.instance.getNodeByDerect(dx,dy);
            node.value = value;

            this._roadDic[node.cx + "_" + node.cy] = node;
        }
    }

用这个 seekPath2,即使点击到障碍能能走到靠近障碍最近的点

嗯,我想实现点击的坐标如果不能行走,应该在数据里坐标是x,y以及这个点相对应的值应该是0,我只需要判断是0就可以弹一个提示了这样理解应该对吧

可惜好像只能布置路点,没法布置数据层

这个太牛了,感谢大佬的分享

大佬,您说的布置数据层是直接地图编辑器里面布置吗?
请问您有用过相似的软件吗?

这个编辑器 与 tilemap 有对比过吗?
优缺点 各是什么呀?

和tileMap不是同一类东西。tileMap是把地块图片拼成一个整的地图,我这个编辑器是对整张地图编辑地形数据

tilemap一样能对一张大图做地形数据编辑。

mark!

怎么弄????

mark.

请教一些基础问题,萌新才学。
1 为什么要将大图片 切割成小图。(不是更零碎性能更差么,有些工具甚至是合并工具)
2 能将这些切割后的小图(一堆东西)做成prefab(预制体)吗?(我只想提高手机或者网页的性能)

比如一张5000 * 5000像素的地图有大小10M,你要一次加载这张地图到游戏里要多久呢?网络差点应该花你半分钟吧。
如果我做成地图切块,我是手机分辨率是1136* 640像素,游戏一开始只要加载这1136 * 640像素内的地图切块就可以了,玩家移动的时候,再继续加载要显示的新地图快,这样效率不是更高吗。

做地图切块加载是针对的是大地图,提高效率。而且有些平台比如微信,不支持超过2048 * 2048的地图,这时做地图切块就能避开这个限制。

当然如果地图比较小,不用切块,直接加载单张地图效率会更高一点。

1赞