语句是: [( )] rmSetAreaWaterType(int areaID, string waterName): Sets the water type for an area.
[( )] rmSetAreaWaterType(int areaID, string waterName): 给地形设定水域类型,然后这个地形就变成水域了,string waterName参考下表。
River | |||||||
![]() |
Amazon River | ![]() |
Andes River | ![]() |
Deccan Plateau River | ![]() |
Pampas River |
![]() |
Yellow River | ![]() |
Yukon River | ||||
Lake | |||||||
![]() |
Amsterdam | ![]() |
Bayou | ![]() |
Berlin | ![]() |
Borneo Water |
![]() |
China_HC | ![]() |
Constantinople | ![]() |
Great Lakes | ![]() |
Great Lakes Ice |
![]() |
Great Plains Pond | ![]() |
India_HC | ![]() |
Iroquois_HC | ![]() |
Japan_HC |
![]() |
Lisbon | ![]() |
London | ![]() |
New England Lake | ![]() |
Northwest Territory Water |
![]() |
Paris | ![]() |
Saguenay Lake | ![]() |
Seville | ![]() |
Texas Pond |
![]() |
Yellow River Flooded | ||||||
Coast | |||||||
![]() |
Amazon River Basin | ![]() |
Araucania Central Coast | ![]() |
Araucania North Coast | ![]() |
Araucania Southern Coast |
![]() |
Atlantic Coast | ![]() |
Bayou SPC | ![]() |
Borneo Coast | ![]() |
California Coast |
![]() |
Caribbean Coast | ![]() |
Ceylon Coast | ![]() |
Cinematic Ship Ocean | ![]() |
Coastal Japan |
![]() |
Hudson Bay | ![]() |
Hudson Bay | ![]() |
New England Coast | ![]() |
Yucatan Coast |
例如这是一个地形: int TestID=rmCreateArea("Test ID Area"); rmSetAreaSize(TestID, rmAreaTilesToFraction(500), rmAreaTilesToFraction(500)); rmSetAreaWarnFailure(TestID, true); rmSetAreaSmoothDistance(TestID, 0); rmSetAreaCoherence(TestID, 0.0); rmSetAreaMix(TestID, "himalayas_a"); rmSetAreaBaseHeight(TestID, 4.0); rmSetAreaElevationOctaves(TestID, 3); rmSetAreaObeyWorldCircleConstraint(TestID, false); rmSetAreaLocation(TestID, 0.5, 0.5); rmBuildArea(TestID); 将上述语句改成水域如下: int TestID=rmCreateArea("Test ID Area"); rmSetAreaSize(TestID, rmAreaTilesToFraction(500), rmAreaTilesToFraction(500)); rmSetAreaWaterType(TestID, "Cinematic Ship Ocean"); rmSetAreaWarnFailure(TestID, true); rmSetAreaSmoothDistance(TestID, 0); rmSetAreaCoherence(TestID, 0.0); //rmSetAreaMix(TestID, "himalayas_a");将设定地形类型语句删除,就算是保留也不会再起任何作用了。 rmSetAreaBaseHeight(TestID, 4.0);//地形高度可加,也可以不加,看你自己想怎样设定。 rmSetAreaElevationOctaves(TestID, 3); rmSetAreaObeyWorldCircleConstraint(TestID, false); rmSetAreaLocation(TestID, 0.5, 0.5); rmBuildArea(TestID);![]()
int TestID=rmCreateArea("Test ID Area"); rmSetAreaSize(TestID, rmAreaTilesToFraction(500), rmAreaTilesToFraction(500)); rmSetAreaWaterType(TestID, "Cinematic Ship Ocean"); rmSetAreaWarnFailure(TestID, true); rmSetAreaSmoothDistance(TestID, 0); rmSetAreaCoherence(TestID, 0.0); //rmSetAreaMix(TestID, "himalayas_a");将设定地形类型语句删除,就算是保留也不会再起任何作用了。 rmSetAreaBaseHeight(TestID, 14.0);//地形高度14 rmSetAreaElevationOctaves(TestID, 3); rmSetAreaObeyWorldCircleConstraint(TestID, false); rmSetAreaLocation(TestID, 0.5, 0.5); rmBuildArea(TestID);
创建水域注意事项:创建水域应避开所有已有单位,包括已有的水域单位,否则会让原有的单位消失。 你有两种选择: 1.优先创建水域,在地图的第一个单位出现前就要创建,另外其他单位(城镇中心、群组等单位)应该避开水域,不然可能会导致无法放置。
2.创建水域时使用放置规则,避开所有单位,注:这种情况不能用rmSetAreaLocation设定定位点,不然可能会导致无法生成。
方法在前面创建森林的时候已经教过你了,这里不再列出,两个教程的相似度是不是高达80%?
另外水域不像河流那样能控制轮廓,所以你想固定轮廓还是用河流吧。
最后补充可以使用 rmSetOceanReveal(true); 来设定开局已探索水域,添加在rmBuildArea下面就行,或者地图最后一句也行。
本次教程结束。