# ai_industry.hpp

Go to the documentation of this file.

    00001 /* $Id: ai_industry.hpp 16246 2009-05-06 22:31:52Z rubidium $ */
    00002
    00005 #ifndef AI_INDUSTRY_HPP
    00006 #define AI_INDUSTRY_HPP
    00007
    00008 #include "ai_object.hpp"
    00009
    00013 class AIIndustry : public AIObject {
    00014 public:
    00015   static const char *GetClassName() { return "AIIndustry"; }
    00016
    00023   static int32 GetIndustryCount();
    00024
    00030   static bool IsValidIndustry(IndustryID industry_id);
    00031
    00038   static char *GetName(IndustryID industry_id);
    00039
    00048   static bool IsCargoAccepted(IndustryID industry_id, CargoID cargo_id);
    00049
    00058   static int32 GetStockpiledCargo(IndustryID industry_id, CargoID cargo_id);
    00059
    00068   static int32 GetLastMonthProduction(IndustryID industry_id, CargoID cargo_id);
    00069
    00078   static int32 GetLastMonthTransported(IndustryID industry_id, CargoID cargo_id);
    00079
    00086   static TileIndex GetLocation(IndustryID industry_id);
    00087
    00096   static int32 GetAmountOfStationsAround(IndustryID industry_id);
    00097
    00107   static int32 GetDistanceManhattanToTile(IndustryID industry_id, TileIndex tile);
    00108
    00118   static int32 GetDistanceSquareToTile(IndustryID industry_id, TileIndex tile);
    00119
    00126   static bool IsBuiltOnWater(IndustryID industry_id);
    00127
    00134   static bool HasHeliport(IndustryID industry_id);
    00135
    00143   static TileIndex GetHeliportLocation(IndustryID industry_id);
    00144
    00151   static bool HasDock(IndustryID industry_id);
    00152
    00160   static TileIndex GetDockLocation(IndustryID industry_id);
    00161
    00168   static IndustryType GetIndustryType(IndustryID industry_id);
    00169 };
    00170
    00171 #endif /* AI_INDUSTRY_HPP */