(svn r3181) -Bracing

-Indentation
-Whitespace
-DeMorgan's Law
-Test with NULL or 0 for non-booleans
-'\0' instead of 0 for chars
-Remove redundantly redundant comments (like DoFoo(); // Do foo)
-Join multiple short lines with a single statement
-Split single lines with multiple statements
-Avoid assignments in if
This commit is contained in:
tron
2005-11-14 19:48:04 +00:00
parent a7843e1546
commit 9d0e7b6458
63 changed files with 1984 additions and 2359 deletions

117
vehicle.c
View File

@@ -80,8 +80,7 @@ static void VehiclePoolNewBlock(uint start_item)
{
Vehicle *v;
FOR_ALL_VEHICLES_FROM(v, start_item)
v->index = start_item++;
FOR_ALL_VEHICLES_FROM(v, start_item) v->index = start_item++;
}
/* Initialize the vehicle-pool */
@@ -230,9 +229,7 @@ void AfterLoadVehicles(void)
case VEH_Aircraft:
if (v->subtype == 0 || v->subtype == 2) {
v->cur_image = GetAircraftImage(v, v->direction);
if (v->next != NULL) {
v->next->cur_image = v->cur_image;
}
if (v->next != NULL) v->next->cur_image = v->cur_image;
}
break;
default: break;
@@ -325,12 +322,14 @@ static Vehicle *AllocateSingleVehicle(VehicleID *skip_vehicles)
return NULL;
}
Vehicle *AllocateVehicle(void)
{
VehicleID counter = 0;
return AllocateSingleVehicle(&counter);
}
/** Allocates a lot of vehicles and frees them again
* @param vl pointer to an array of vehicles to get allocated. Can be NULL if the vehicles aren't needed (makes it test only)
* @param num number of vehicles to allocate room for
@@ -359,7 +358,6 @@ bool AllocateVehicles(Vehicle **vl, int num)
void *VehicleFromPos(TileIndex tile, void *data, VehicleFromPosProc *proc)
{
int x,y,x2,y2;
VehicleID veh;
Point pt = RemapCoords(TileX(tile) * 16, TileY(tile) * 16, 0);
x2 = ((pt.x + 104) & 0x1F80) >> 7;
@@ -368,16 +366,16 @@ void *VehicleFromPos(TileIndex tile, void *data, VehicleFromPosProc *proc)
y2 = ((pt.y + 56) & 0xFC0);
y = ((pt.y - 294) & 0xFC0);
for(;;) {
for (;;) {
int xb = x;
for(;;) {
veh = _vehicle_position_hash[ (x+y)&0xFFFF ];
for (;;) {
VehicleID veh = _vehicle_position_hash[(x + y) & 0xFFFF];
while (veh != INVALID_VEHICLE) {
Vehicle *v = GetVehicle(veh);
void *a;
if ((a = proc(v, data)) != NULL)
return a;
a = proc(v, data);
if (a != NULL) return a;
veh = v->next_hash;
}
@@ -408,8 +406,7 @@ void UpdateVehiclePosHash(Vehicle *v, int x, int y)
new_hash = (x == INVALID_COORD) ? NULL : &_vehicle_position_hash[GEN_HASH(x,y)];
old_hash = (old_x == INVALID_COORD) ? NULL : &_vehicle_position_hash[GEN_HASH(old_x, old_y)];
if (old_hash == new_hash)
return;
if (old_hash == new_hash) return;
/* remove from hash table? */
if (old_hash != NULL) {
@@ -421,10 +418,11 @@ void UpdateVehiclePosHash(Vehicle *v, int x, int y)
last = u;
}
if (last == NULL)
if (last == NULL) {
*old_hash = v->next_hash;
else
} else {
last->next_hash = v->next_hash;
}
}
/* insert into hash table? */
@@ -525,8 +523,8 @@ Vehicle *GetFirstVehicleInChain(const Vehicle *v)
uint CountVehiclesInChain(const Vehicle* v)
{
int count = 0;
do count++; while ( (v=v->next) != NULL);
uint count = 0;
do count++; while ((v = v->next) != NULL);
return count;
}
@@ -719,7 +717,7 @@ void ViewportAddVehicles(DrawPixelInfo *dpi)
for(;;) {
xb = x;
for(;;) {
veh = _vehicle_position_hash[ (x+y)&0xFFFF ];
veh = _vehicle_position_hash[(x + y) & 0xFFFF];
while (veh != INVALID_VEHICLE) {
v = GetVehicle(veh);
@@ -1411,9 +1409,10 @@ void CheckVehicleBreakdown(Vehicle *v)
if ((rel_old >> 8) != (rel >> 8))
InvalidateWindow(WC_VEHICLE_DETAILS, v->index);
if (v->breakdown_ctr != 0 || (v->vehstatus & VS_STOPPED) != 0 ||
v->cur_speed < 5 || _game_mode == GM_MENU)
return;
if (v->breakdown_ctr != 0 || v->vehstatus & VS_STOPPED ||
v->cur_speed < 5 || _game_mode == GM_MENU) {
return;
}
r = Random();
@@ -1427,8 +1426,7 @@ void CheckVehicleBreakdown(Vehicle *v)
if (v->type == VEH_Ship) rel += 0x6666;
/* disabled breakdowns? */
if (_opt.diff.vehicle_breakdowns < 1)
return;
if (_opt.diff.vehicle_breakdowns < 1) return;
/* reduced breakdowns? */
if (_opt.diff.vehicle_breakdowns == 1) rel += 0x6666;
@@ -1450,12 +1448,10 @@ static const StringID _vehicle_type_names[4] = {
static void ShowVehicleGettingOld(Vehicle *v, StringID msg)
{
if (v->owner != _local_player)
return;
if (v->owner != _local_player) return;
// Do not show getting-old message if autorenew is active
if (GetPlayer(v->owner)->engine_renew)
return;
if (GetPlayer(v->owner)->engine_renew) return;
SetDParam(0, _vehicle_type_names[v->type - 0x10]);
SetDParam(1, v->unitnumber);
@@ -1492,20 +1488,19 @@ static Vehicle *GetNextEnginePart(Vehicle *v)
{
switch (v->type) {
case VEH_Train:
{
const RailVehicleInfo *rvi = RailVehInfo(v->engine_type);
if (rvi->flags & RVI_MULTIHEAD)
if (RailVehInfo(v->engine_type)->flags & RVI_MULTIHEAD) {
return GetRearEngine(v, v->engine_type);
if (v->next != NULL && v->next->subtype == TS_Artic_Part)
return v->next;
}
}
if (v->next != NULL && v->next->subtype == TS_Artic_Part) return v->next;
break;
case VEH_Aircraft:
return v->next;
break;
case VEH_Road:
case VEH_Ship:
break;
default: NOT_REACHED();
}
return NULL;
@@ -1523,8 +1518,7 @@ int32 CmdCloneVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
Vehicle *w_front, *w, *w_rear;
int cost, total_cost = 0;
if (!IsVehicleIndex(p1))
return CMD_ERROR;
if (!IsVehicleIndex(p1)) return CMD_ERROR;
v = GetVehicle(p1);
v_front = v;
w = NULL;
@@ -1540,8 +1534,7 @@ int32 CmdCloneVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
* w_rear is the rear end of the cloned train. It's used to add more cars and is only used by trains
*/
if (!CheckOwnership(v->owner))
return CMD_ERROR;
if (!CheckOwnership(v->owner)) return CMD_ERROR;
if (v->type == VEH_Train && v->subtype != TS_Front_Engine) return CMD_ERROR;
@@ -1567,7 +1560,7 @@ int32 CmdCloneVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
total_cost += cost;
if (flags & DC_EXEC) {
w= GetVehicle(_new_vehicle_id);
w = GetVehicle(_new_vehicle_id);
if (v->type != VEH_Road) { // road vehicles can't be refitted
if (v->cargo_type != w->cargo_type) {
@@ -1636,11 +1629,11 @@ static void MoveVehicleCargo(Vehicle *dest, Vehicle *source)
}
/* Replaces a vehicle (used to be called autorenew)
* This function is only called from MaybeReplaceVehicle(), which is the next one
* This function is only called from MaybeReplaceVehicle()
* Must be called with _current_player set to the owner of the vehicle
* @param w Vehicle to replace
* @param flags is the flags to use when calling DoCommand(). Mainly DC_EXEC counts
* return value is cost of the replacement or CMD_ERROR
* @return value is cost of the replacement or CMD_ERROR
*/
static int32 ReplaceVehicle(Vehicle **w, byte flags)
{
@@ -1652,11 +1645,9 @@ static int32 ReplaceVehicle(Vehicle **w, byte flags)
bool new_front = false;
Vehicle *new_v = NULL;
new_engine_type = p->engine_replacement[old_v->engine_type] == INVALID_ENGINE ? old_v->engine_type: p->engine_replacement[old_v->engine_type];
new_engine_type = p->engine_replacement[old_v->engine_type] == INVALID_ENGINE ? old_v->engine_type : p->engine_replacement[old_v->engine_type];
cost = DoCommand(old_v->x_pos, old_v->y_pos, new_engine_type, 2, flags, CMD_BUILD_VEH(old_v->type));
//check if the new engine is buildable
if (CmdFailed(cost)) return cost;
if (flags & DC_EXEC) {
@@ -1708,11 +1699,12 @@ static int32 ReplaceVehicle(Vehicle **w, byte flags)
return cost;
}
/** replaces a vehicle if it's set for autoreplace or is too old(used to be called autorenew)
* @param v The vehicle to replace
* if the vehicle is a train, v needs to be the front engine
* return value is a pointer to the new vehicle, which is the same as the argument if nothing happened
*/
/** replaces a vehicle if it's set for autoreplace or is too old
* (used to be called autorenew)
* @param v The vehicle to replace
* if the vehicle is a train, v needs to be the front engine
* return value is a pointer to the new vehicle, which is the same as the argument if nothing happened
*/
static void MaybeReplaceVehicle(Vehicle *v)
{
Vehicle *w;
@@ -1739,14 +1731,15 @@ static void MaybeReplaceVehicle(Vehicle *v)
train_fits_in_station = true;
}
while (true) {
for (;;) {
cost = 0;
w = v;
do {
// check if the vehicle should be replaced
if (!p->engine_renew || w->age - w->max_age < (p->engine_renew_months * 30) //replace if engine is too old
|| (w->max_age == 0)) { // rail cars got a max age of 0
if (p->engine_replacement[w->engine_type] == INVALID_ENGINE) // updates to a new model
if (!p->engine_renew ||
w->age - w->max_age < (p->engine_renew_months * 30) || // replace if engine is too old
w->max_age == 0) { // rail cars got a max age of 0
if (p->engine_replacement[w->engine_type] == INVALID_ENGINE) // updates to a new model
continue;
}
@@ -1760,14 +1753,16 @@ static void MaybeReplaceVehicle(Vehicle *v)
/* Now replace the vehicle */
temp_cost = ReplaceVehicle(&w, flags);
if (flags & DC_EXEC && !(w->type == VEH_Train && w->u.rail.first_engine != INVALID_VEHICLE)){
// now we bought a new engine and sold the old one. We need to fix the pointers in order to avoid pointing to the old one
// for trains: these pointers should point to the front engine and not the cars
if (flags & DC_EXEC &&
(w->type != VEH_Train || w->u.rail.first_engine == INVALID_VEHICLE)) {
/* now we bought a new engine and sold the old one. We need to fix the
* pointers in order to avoid pointing to the old one for trains: these
* pointers should point to the front engine and not the cars
*/
v = w;
}
if (CmdFailed(temp_cost))
break;
if (CmdFailed(temp_cost)) break;
cost += temp_cost;
} while (w->type == VEH_Train && (w = GetNextVehicle(w)) != NULL);
@@ -1787,8 +1782,7 @@ static void MaybeReplaceVehicle(Vehicle *v)
AddNewsItem(message, NEWS_FLAGS(NM_SMALL, NF_VIEWPORT|NF_VEHICLE, NT_ADVICE, 0), v->index, 0);
}
if (stopped)
v->vehstatus &= ~VS_STOPPED; //we start the vehicle again
if (stopped) v->vehstatus &= ~VS_STOPPED;
_current_player = OWNER_NONE;
return;
}
@@ -1823,8 +1817,7 @@ static void MaybeReplaceVehicle(Vehicle *v)
if (IsLocalPlayer()) ShowCostOrIncomeAnimation(v->x_pos, v->y_pos, v->z_pos, cost);
if (stopped)
v->vehstatus &= ~VS_STOPPED; //we start the vehicle again
if (stopped) v->vehstatus &= ~VS_STOPPED;
_current_player = OWNER_NONE;
}