kora-bot/Source/Military.h

29 lines
969 B
C
Raw Normal View History

2023-04-10 23:31:02 +00:00
#pragma once
#include <stdlib.h>
#include <BWAPI.h>
#include "CUnit.h"
#include "Macro.h"
using namespace BWAPI;
class Military
{
public:
static void addSquadlessUnits(int squadIndex);
static void checkAttack();
static void checkDefense();
static double checkEnemiesAt(CBase base);
static void checkSquads();
static std::pair<TilePosition, int> getAttackLocation();
static double getBaseDefense(CBase b, std::string type, int playerID);
static TilePosition getChokepointCenter(const BWEM::Area* area, const BWEM::Area* neighborArea);
static int getClosestSquad(TilePosition tp);
static int getIdleSquad();
static std::pair<int, int> getMostVulnerableBase(int playerID);
static bool inThreatRange(TilePosition tp, CUnit unit);
static bool isThreatened(TilePosition tp);
static double likelihoodToAttack();
static void sendDefense(TilePosition tp, int attackerScore, int defenseScore);
static bool shouldAttackNonMaxed();
};