BWAPI
|
00001 #pragma once 00002 #include <BWAPI.h> 00003 #include "PlayerData.h" 00004 #include <set> 00005 #include <string> 00006 00007 namespace BWAPI 00008 { 00009 class Unit; 00010 class Force; 00011 class PlayerImpl : public Player 00012 { 00013 private: 00014 int id; 00015 public: 00016 PlayerData* self; 00017 std::set<Unit*> units; 00018 void clear(); 00019 PlayerImpl(int id); 00020 virtual int getID() const; 00021 virtual std::string getName() const; 00022 virtual const std::set<Unit*>& getUnits() const; 00023 virtual Race getRace() const; 00024 virtual PlayerType getType() const; 00025 virtual Force* getForce() const; 00026 virtual bool isAlly(Player* player) const; 00027 virtual bool isEnemy(Player* player) const; 00028 virtual bool isNeutral() const; 00029 virtual TilePosition getStartLocation() const; 00030 virtual bool isVictorious() const; 00031 virtual bool isDefeated() const; 00032 virtual bool leftGame() const; 00033 00034 virtual int minerals() const; 00035 virtual int gas() const; 00036 virtual int cumulativeMinerals() const; 00037 virtual int cumulativeGas() const; 00038 00039 virtual int supplyTotal() const; 00040 virtual int supplyUsed() const; 00041 virtual int supplyTotal(Race race) const; 00042 virtual int supplyUsed(Race race) const; 00043 00044 virtual int allUnitCount(UnitType unit) const; 00045 virtual int visibleUnitCount(UnitType unit) const; 00046 virtual int completedUnitCount(UnitType unit) const; 00047 virtual int incompleteUnitCount(UnitType unit) const; 00048 virtual int deadUnitCount(UnitType unit) const; 00049 virtual int killedUnitCount(UnitType unit) const; 00050 00051 virtual int getUpgradeLevel(UpgradeType upgrade) const; 00052 virtual bool hasResearched(TechType tech) const; 00053 virtual bool isResearching(TechType tech) const; 00054 virtual bool isUpgrading(UpgradeType upgrade) const; 00055 00056 virtual BWAPI::Color getColor() const; 00057 virtual int getTextColor() const; 00058 00059 virtual int maxEnergy(UnitType unit) const; 00060 virtual double topSpeed(UnitType unit) const; 00061 virtual int groundWeaponMaxRange(UnitType unit) const; 00062 virtual int airWeaponMaxRange(UnitType unit) const; 00063 virtual int weaponMaxRange(WeaponType weapon) const; 00064 virtual int sightRange(UnitType unit) const; 00065 virtual int groundWeaponDamageCooldown(UnitType unit) const; 00066 virtual int armor(UnitType unit) const; 00067 00068 virtual int getUnitScore() const; 00069 virtual int getKillScore() const; 00070 virtual int getBuildingScore() const; 00071 virtual int getRazingScore() const; 00072 virtual int getCustomScore() const; 00073 00074 virtual bool isObserver() const; 00075 }; 00076 };