Data Structures | Defines | Functions

ship.h File Reference

Base for ships. More...

#include "vehicle_base.h"
#include "water_map.h"

Go to the source code of this file.

Data Structures

struct  Ship
 All ships have this type. More...

Defines

#define FOR_ALL_SHIPS(var)   FOR_ALL_VEHICLES_OF_TYPE(Ship, var)
 Iterate over all ships.

Functions

void GetShipSpriteSize (EngineID engine, uint &width, uint &height, EngineImageType image_type)
 Get the size of the sprite of a ship sprite heading west (used for lists).
WaterClass GetEffectiveWaterClass (TileIndex tile)
 Determine the effective WaterClass for a ship travelling on a tile.

Detailed Description

Base for ships.

Definition in file ship.h.


Define Documentation

#define FOR_ALL_SHIPS (   var  )     FOR_ALL_VEHICLES_OF_TYPE(Ship, var)

Iterate over all ships.

Parameters:
var The variable used for iteration.

Definition at line 55 of file ship.h.

Referenced by RemoveDock().


Function Documentation

WaterClass GetEffectiveWaterClass ( TileIndex  tile  ) 

Determine the effective WaterClass for a ship travelling on a tile.

Parameters:
tile Tile of interest
Returns:
the waterclass to be used by the ship.

Definition at line 44 of file ship_cmd.cpp.

References GetTunnelBridgeTransportType(), GetWaterClass(), HasTileWaterClass(), IsTileType(), MP_RAILWAY, MP_TUNNELBRIDGE, RAIL_GROUND_WATER, and TRANSPORT_WATER.

Referenced by CYapfCostShipT< Types >::PfCalcCost(), and Ship::UpdateCache().

void GetShipSpriteSize ( EngineID  engine,
uint &  width,
uint &  height,
EngineImageType  image_type 
)

Get the size of the sprite of a ship sprite heading west (used for lists).

Parameters:
engine The engine to get the sprite from
width The width of the sprite
height The height of the sprite

Definition at line 94 of file ship_cmd.cpp.

References Sprite::height, ST_NORMAL, UnScaleByZoom(), Sprite::width, and ZOOM_LVL_GUI.