(svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check

This commit is contained in:
smatz
2009-06-06 16:54:22 +00:00
parent c90819ff6d
commit 0c10006907
36 changed files with 185 additions and 161 deletions

View File

@@ -425,7 +425,7 @@ static int32 NPFFindDepot(AyStar *as, OpenListNode *current)
/** Find any safe and free tile. */
static int32 NPFFindSafeTile(AyStar *as, OpenListNode *current)
{
const Train *v = (const Train *)((NPFFindStationOrTileData*)as->user_target)->v;
const Train *v = Train::From(((NPFFindStationOrTileData *)as->user_target)->v);
return
IsSafeWaitingPosition(v, current->path.node.tile, current->path.node.direction, true, _settings_game.pf.forbid_90_deg) &&
@@ -506,7 +506,7 @@ static void NPFSaveTargetData(AyStar *as, OpenListNode *current)
if (as->user_target != NULL && ((NPFFindStationOrTileData*)as->user_target)->reserve_path && as->user_data[NPF_TYPE] == TRANSPORT_RAIL) {
/* Path reservation is requested. */
const Train *v = (const Train *)((NPFFindStationOrTileData*)as->user_target)->v;
const Train *v = Train::From(((NPFFindStationOrTileData *)as->user_target)->v);
const PathNode *target = FindSafePosition(&current->path, v);
ftd->node = target->node;