src/vehicle.cpp
changeset 7727 5aaf86199444
parent 7702 f963cd54d4d5
child 7758 17ad53748c7b
equal deleted inserted replaced
7726:a9c8beebf2c1 7727:5aaf86199444
   117 	}
   117 	}
   118 }
   118 }
   119 
   119 
   120 static void *EnsureNoVehicleProc(Vehicle *v, void *data)
   120 static void *EnsureNoVehicleProc(Vehicle *v, void *data)
   121 {
   121 {
   122 	if (v->tile != *(const TileIndex*)data || v->type == VEH_DISASTER)
   122 	if (v->tile != *(const TileIndex*)data || v->type == VEH_DISASTER || (v->type == VEH_AIRCRAFT && v->subtype == AIR_SHADOW))
   123 		return NULL;
   123 		return NULL;
   124 
   124 
   125 	_error_message = VehicleInTheWayErrMsg(v);
   125 	_error_message = VehicleInTheWayErrMsg(v);
   126 	return v;
   126 	return v;
   127 }
   127 }
   133 
   133 
   134 static void *EnsureNoVehicleProcZ(Vehicle *v, void *data)
   134 static void *EnsureNoVehicleProcZ(Vehicle *v, void *data)
   135 {
   135 {
   136 	const TileInfo *ti = (const TileInfo*)data;
   136 	const TileInfo *ti = (const TileInfo*)data;
   137 
   137 
   138 	if (v->tile != ti->tile || v->type == VEH_DISASTER) return NULL;
   138 	if (v->tile != ti->tile || v->type == VEH_DISASTER || (v->type == VEH_AIRCRAFT && v->subtype == AIR_SHADOW)) return NULL;
   139 	if (v->z_pos > ti->z) return NULL;
   139 	if (v->z_pos > ti->z) return NULL;
   140 
   140 
   141 	_error_message = VehicleInTheWayErrMsg(v);
   141 	_error_message = VehicleInTheWayErrMsg(v);
   142 	return v;
   142 	return v;
   143 }
   143 }