Files
@ r23774:59b54c2b48f6
Branch filter:
Location: cpp/openttd-patchpack/source/src/station_func.h - annotation
r23774:59b54c2b48f6
2.8 KiB
text/x-c
Change: Limit in-editor warnings in VS 2019
The AllRules ruleset causes the VS 2019 editor to litter warning squiggles all over the place, about things that would never be fixed. Limit it to the smallest ruleset available. Warnings shown now mainly concern potential arithmetic overflows.
The AllRules ruleset causes the VS 2019 editor to litter warning squiggles all over the place, about things that would never be fixed. Limit it to the smallest ruleset available. Warnings shown now mainly concern potential arithmetic overflows.
r8785:8312063c5ee4 r8785:8312063c5ee4 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r8787:4e60a460f8ef r8785:8312063c5ee4 r20252:76a6f1c78ce7 r18560:ff3a65f20dab r19885:5058ecc2c266 r23698:1872cc5b7dd7 r21443:e0525f7288a8 r23420:9c4e5ff5cf11 r8785:8312063c5ee4 r10207:a1fc2f2a33db r8785:8312063c5ee4 r23431:60a46e3b7cd7 r8785:8312063c5ee4 r8785:8312063c5ee4 r12381:5e06b887e97b r8785:8312063c5ee4 r12253:9cc92893e2d0 r23607:36c15679007d r12936:7e236b5793c8 r12936:7e236b5793c8 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r8785:8312063c5ee4 r15886:9bf3f985d8c3 r8785:8312063c5ee4 r8785:8312063c5ee4 r23760:58e1a032cdaf r23760:58e1a032cdaf r23760:58e1a032cdaf r23761:c6d5f8035327 r8785:8312063c5ee4 r8787:4e60a460f8ef r8787:4e60a460f8ef r8787:4e60a460f8ef r19485:c24ce339357e r19485:c24ce339357e r8787:4e60a460f8ef r9334:6d079081ec24 r8787:4e60a460f8ef r19885:5058ecc2c266 r19885:5058ecc2c266 r20252:76a6f1c78ce7 r21443:e0525f7288a8 r20420:0d08d63e1ea5 r20252:76a6f1c78ce7 r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r18560:ff3a65f20dab r8785:8312063c5ee4 | /* $Id$ */
/*
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file station_func.h Functions related to stations. */
#ifndef STATION_FUNC_H
#define STATION_FUNC_H
#include "sprite.h"
#include "rail_type.h"
#include "road_type.h"
#include "vehicle_type.h"
#include "economy_func.h"
#include "rail.h"
#include "road.h"
#include "linkgraph/linkgraph_type.h"
#include "industry_type.h"
void ModifyStationRatingAround(TileIndex tile, Owner owner, int amount, uint radius);
void FindStationsAroundTiles(const TileArea &location, StationList *stations, bool use_nearby = true);
void ShowStationViewWindow(StationID station);
void UpdateAllStationVirtCoords();
CargoArray GetProductionAroundTiles(TileIndex tile, int w, int h, int rad);
CargoArray GetAcceptanceAroundTiles(TileIndex tile, int w, int h, int rad, CargoTypes *always_accepted = nullptr);
void UpdateStationAcceptance(Station *st, bool show_msg);
const DrawTileSprites *GetStationTileLayout(StationType st, byte gfx);
void StationPickerDrawSprite(int x, int y, StationType st, RailType railtype, RoadType roadtype, int image);
bool HasStationInUse(StationID station, bool include_company, CompanyID company);
void DeleteOilRig(TileIndex t);
void UpdateStationDockingTiles(Station *st);
void RemoveDockingTile(TileIndex t);
void ClearDockingTilesCheckingNeighbours(TileIndex tile);
bool IsValidDockingDirectionForDock(TileIndex t, DiagDirection d);
/* Check if a rail station tile is traversable. */
bool IsStationTileBlocked(TileIndex tile);
bool CanStationTileHavePylons(TileIndex tile);
bool CanStationTileHaveWires(TileIndex tile);
void UpdateAirportsNoise();
bool SplitGroundSpriteForOverlay(const TileInfo *ti, SpriteID *ground, RailTrackOffset *overlay_offset);
void IncreaseStats(Station *st, const Vehicle *v, StationID next_station_id);
void IncreaseStats(Station *st, CargoID cargo, StationID next_station_id, uint capacity, uint usage, EdgeUpdateMode mode);
void RerouteCargo(Station *st, CargoID c, StationID avoid, StationID avoid2);
/**
* Calculates the maintenance cost of a number of station tiles.
* @param num Number of station tiles.
* @return Total cost.
*/
static inline Money StationMaintenanceCost(uint32 num)
{
return (_price[PR_INFRASTRUCTURE_STATION] * num * (1 + IntSqrt(num))) >> 7; // 7 bits scaling.
}
Money AirportMaintenanceCost(Owner owner);
#endif /* STATION_FUNC_H */
|