Capture current mission, AI, map and administration development

Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
This commit is contained in:
2026-10-13 22:52:53 +02:00
parent a951a96edc
commit 6a667d8deb
8104 changed files with 2124945 additions and 2061 deletions
+4 -4
View File
@@ -76,7 +76,7 @@ ERR_GameMode* ERR_GameMode::current=nullptr;
struct ERR_Actors {static bool Player(IEntity e){return e&&e->player;}static bool CanFight(IEntity e){return e&&e->alive&&e->awake;}static bool Alive(IEntity e){return e&&e->alive;} };
struct Replication {static bool server;static int bumps; static bool IsServer(){return server;}static void BumpMe(){bumps++;} };bool Replication::server=true;int Replication::bumps=0;
struct CompartmentAccessComponent {static bool GetVehicleIn(IEntity e){return e&&e->aboard;} };
struct Security {bool m_Configured=true,m_Breached=false,empty=true,clear=true;IEntity owner;vector m_LockAnchor; IEntity GetOwner(){return owner;}bool EmptyVehicle(){return empty;}bool ClearReach(IEntity,vector){return clear;}
struct Security {bool m_Configured=true,m_Breached=false,empty=true,clear=true;int alarms=0;void BeginAlarm(){assert(m_Breached);alarms++;}IEntity owner;vector m_LockAnchor; IEntity GetOwner(){return owner;}bool EmptyVehicle(){return empty;}bool ClearReach(IEntity,vector){return clear;}
'''+methods+'''
};
int main(){
@@ -105,9 +105,9 @@ int main(){
mode.rosterExists=false;assert(!s.TryBreach(&player));mode.rosterExists=true;
Replication::server=false;assert(!s.TryBreach(&player));Replication::server=true;
ERR_GameMode::current=nullptr;assert(!s.TryBreach(&player));ERR_GameMode::current=&mode;
assert(Replication::bumps==0&&s.Locked());
assert(s.TryBreach(&player)&&!s.Locked()&&Replication::bumps==1);
assert(!s.TryBreach(&player)&&!s.TryBreach(&other)&&Replication::bumps==1);
assert(Replication::bumps==0&&s.Locked()&&s.alarms==0);
assert(s.TryBreach(&player)&&!s.Locked()&&Replication::bumps==1&&s.alarms==1);
assert(!s.TryBreach(&player)&&!s.TryBreach(&other)&&Replication::bumps==1&&s.alarms==1);
}
''')