Changeset - r3076:e978321c3641
[Not reviewed]
master
0 4 0
tron - 18 years ago 2006-02-24 19:56:24
tron@openttd.org
(svn r3665) Add a function to turn a tile into a clear tile
4 files changed with 18 insertions and 19 deletions:
0 comments (0 inline, 0 general)
clear.h
Show inline comments
 
@@ -4,6 +4,7 @@
 
#define CLEAR_H
 

	
 
#include "macros.h"
 
#include "tile.h"
 

	
 
/* ground type, m5 bits 2...4
 
 * valid densities (bits 0...1) in comments after the enum
 
@@ -43,4 +44,15 @@ static inline void SetFenceSE(TileIndex 
 
static inline uint GetFenceSW(TileIndex t) { return GB(_m[t].m4, 5, 3); }
 
static inline void SetFenceSW(TileIndex t, uint h) { SB(_m[t].m4, 5, 3, h); }
 

	
 

	
 
static inline void MakeClear(TileIndex t, ClearGround g, uint density)
 
{
 
	SetTileType(t, MP_CLEAR);
 
	SetTileOwner(t, OWNER_NONE);
 
	_m[t].m2 = 0;
 
	_m[t].m3 = 0;
 
	_m[t].m4 = 0 << 5 | 0 << 2;
 
	_m[t].m5 = 0 << 5 | g << 2 | density;
 
}
 

	
 
#endif
landscape.c
Show inline comments
 
@@ -239,12 +239,7 @@ void DrawFoundation(TileInfo *ti, uint f
 

	
 
void DoClearSquare(TileIndex tile)
 
{
 
	SetTileType(tile, MP_CLEAR);
 
	SetTileOwner(tile, OWNER_NONE);
 
	_m[tile].m2 = 0;
 
	_m[tile].m3 = 0;
 
	_m[tile].m4 = 0;
 
	SetClearGroundDensity(tile, CL_GRASS, _generating_world ? 3 : 0);
 
	MakeClear(tile, CL_GRASS, _generating_world ? 3 : 0);
 
	MarkTileDirtyByTile(tile);
 
}
 

	
 
@@ -438,12 +433,7 @@ void InitializeLandscape(void)
 

	
 
	map_size = MapSize();
 
	for (i = 0; i < map_size; i++) {
 
		_m[i].type_height = MP_CLEAR << 4;
 
		_m[i].m1          = OWNER_NONE;
 
		_m[i].m2          = 0;
 
		_m[i].m3          = 0;
 
		_m[i].m4          = 0;
 
		_m[i].m5          = 3;
 
		MakeClear(i, CL_GRASS, 3);
 
		_m[i].extra       = 0;
 
	}
 

	
terraform_gui.c
Show inline comments
 
@@ -82,8 +82,7 @@ static void GenerateRockyArea(TileIndex 
 

	
 
	BEGIN_TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
		if (IsTileType(tile, MP_CLEAR) || IsTileType(tile, MP_TREES)) {
 
			SetTileType(tile, MP_CLEAR);
 
			SetClearGroundDensity(tile, CL_ROCKS, 3);
 
			MakeClear(tile, CL_ROCKS, 3);
 
			MarkTileDirtyByTile(tile);
 
			success = true;
 
		}
tree_cmd.c
Show inline comments
 
@@ -515,12 +515,10 @@ static void TileLoop_Trees(TileIndex til
 
				SetTreeGrowth(tile, 3);
 
			} else {
 
				/* just one tree, change type into MP_CLEAR */
 
				SetTileType(tile, MP_CLEAR);
 
				SetTileOwner(tile, OWNER_NONE);
 
				switch (GetTreeGround(tile)) {
 
					case TR_GRASS: SetClearGroundDensity(tile, CL_GRASS, 3); break;
 
					case TR_ROUGH: SetClearGroundDensity(tile, CL_ROUGH, 3); break;
 
					default:       SetClearGroundDensity(tile, CL_SNOW, GetTreeDensity(tile)); break;
 
					case TR_GRASS: MakeClear(tile, CL_GRASS, 3); break;
 
					case TR_ROUGH: MakeClear(tile, CL_ROUGH, 3); break;
 
					default:       MakeClear(tile, CL_SNOW, GetTreeDensity(tile)); break;
 
				}
 
			}
 
			break;
0 comments (0 inline, 0 general)