#pragma once #include #ifdef __cplusplus extern "C" { #endif int Region_getID(Region* self); int Region_getRegionGroupID(Region* self); Position Region_getCenter(Region* self); bool Region_isHigherGround(Region* self); int Region_getDefensePriority(Region* self); bool Region_isAccessible(Region* self); RegionIterator* Region_getNeighbors(Region* self); int Region_getBoundsLeft(Region* self); int Region_getBoundsTop(Region* self); int Region_getBoundsRight(Region* self); int Region_getBoundsBottom(Region* self); Region* Region_getClosestAccessibleRegion(Region* self); Region* Region_getClosestInaccessibleRegion(Region* self); int Region_getDistance(Region* self, Region* other); UnitIterator* Region_getUnits(Region* self, UnaryUnitFilter pred); void Region_registerEvent(Region* self, void (*const action)(Region*), bool (*const condition)(Region*), int timesToRun, int framesToCheck); #ifdef __cplusplus } // extern "C" #endif