今天又看了一下 int playerTilesX=10000; //设定地图X大小 int playerTilesZ=10000; //设定地图Z大小(帝国3的Y是高度,Z才是我们平常所用到的Y)
int SizeX = 2*sqrt(cNumberNonGaiaPlayers*playerTilesX); int SizeZ = 2*sqrt(cNumberNonGaiaPlayers*playerTilesZ);
这几句是否可以这样翻译 定义 :玩家名(随便翻译的)=10000 那么 定义:地图大小=2 X 开平方(玩家数 X 10000)) 假设 一共4个玩家 就是:地图大小= 2 X 开平方(4 X 10000))=400 按照坐标图 X,Z的为0-1,那么确定精细坐标的时候就相当于把一个坐标长度1分成400份,每一份相当于0.0025, 在制作河流呀,固定的部落呀等时,先直接制作0-400的坐标图(坐标生成器),然后叠加上要绘制河流等地图图片,在200的坐标中把坐标确定出来(很精细),例如(200,200)的坐标,转换成帝国1的坐标就是200 X 0.0025=0.5(这个转换也有工具可以直接换)那么在具体的制作中就可以定位(0.5,0.5)了
还有那个河流的 int RiverID = rmRiverCreate(-1, "Texas Pond", 1, 1, 25, 25); //(int areaID, 河流类型, 作用不明, 作用不明, 最小半径, 最大半径) rmRiverAddWaypoint(RiverID, 0.9, 0.9 ); //坐标参照地图坐标 rmRiverAddWaypoint(RiverID, 0.1, 0.1 ); //坐标参照地图坐标 经过测试 按照以上方法得出的一个这样的结论:使用(-1, "Texas Pond", 1, 1, 25, 25); 这组数据时,(25+25)*2=100(河流宽度)当玩家人数为2时,地图大小=2*开方(2*10000)=200,那就是 河流 占 全地图的一半
不知道是否是这个意思
|