forked from Mirrors/openclonk
don't place branch and trunk in liquids
parent
61ffb0fb28
commit
e7d66139eb
|
@ -49,7 +49,7 @@ public func Place(int amount, proplist rectangle, proplist settings)
|
||||||
for (var i = 0; i < amount; i++)
|
for (var i = 0; i < amount; i++)
|
||||||
{
|
{
|
||||||
var size = RandomX(settings.size[0], settings.size[1]);
|
var size = RandomX(settings.size[0], settings.size[1]);
|
||||||
var loc = FindLocation(loc_background, Loc_Wall(CNAT_Left | CNAT_Right | CNAT_Top), loc_area);
|
var loc = FindLocation(loc_background, Loc_Not(Loc_Liquid()), Loc_Wall(CNAT_Left | CNAT_Right | CNAT_Top), loc_area);
|
||||||
if (!loc)
|
if (!loc)
|
||||||
continue;
|
continue;
|
||||||
var branch = CreateObjectAbove(Branch);
|
var branch = CreateObjectAbove(Branch);
|
||||||
|
|
|
@ -109,7 +109,7 @@ public func Place(int amount, proplist rectangle, proplist settings)
|
||||||
for (var i = 0; i < amount; i++)
|
for (var i = 0; i < amount; i++)
|
||||||
{
|
{
|
||||||
var size = RandomX(settings.size[0], settings.size[1]);
|
var size = RandomX(settings.size[0], settings.size[1]);
|
||||||
var loc = FindLocation(loc_background, Loc_Wall(CNAT_Left | CNAT_Right | CNAT_Top), loc_area);
|
var loc = FindLocation(loc_background, Loc_Not(Loc_Liquid()), Loc_Wall(CNAT_Left | CNAT_Right | CNAT_Top), loc_area);
|
||||||
if (!loc)
|
if (!loc)
|
||||||
continue;
|
continue;
|
||||||
var trunk = CreateObjectAbove(Trunk);
|
var trunk = CreateObjectAbove(Trunk);
|
||||||
|
|
|
@ -143,12 +143,7 @@ private func InitVegetation(int map_size, int difficulty)
|
||||||
|
|
||||||
// Some branches and trunks.
|
// Some branches and trunks.
|
||||||
Branch->Place(24 + Random(12));
|
Branch->Place(24 + Random(12));
|
||||||
for (var i = 0; i < 4 + Random(3); i++)
|
Trunk->Place(12 + Random(8));
|
||||||
{
|
|
||||||
PlaceVegetation(Trunk, top.x, top.y, top.w, top.h, 1000 * (61 + Random(40)));
|
|
||||||
PlaceVegetation(Trunk, middle.x, middle.y, middle.w, middle.h, 1000 * (61 + Random(40)));
|
|
||||||
PlaceVegetation(Trunk, bottom.x, bottom.y, bottom.w, bottom.h, 1000 * (61 + Random(40)));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Some objects in the earth.
|
// Some objects in the earth.
|
||||||
PlaceObjects(Rock, 25 + 10 * map_size + Random(10),"Earth");
|
PlaceObjects(Rock, 25 + 10 * map_size + Random(10),"Earth");
|
||||||
|
|
Loading…
Reference in New Issue