Fix atlas resource handling and suppression AI serialization
This commit is contained in:
@@ -43,7 +43,7 @@ run(r'''
|
||||
struct string:std::string {using std::string::string;string(std::string s):std::string(s){}bool IsEmpty(){return empty();}};
|
||||
template<class... A>string Format(string s,A...){return s;}
|
||||
template<class... A>void PrintFormat(string,A...){}
|
||||
namespace LogLevel{constexpr int ERROR=1;}
|
||||
namespace LogLevel{constexpr int ERROR=1,WARNING=2;}
|
||||
void Print(string,int){}
|
||||
template<class T>struct Array:std::vector<T>{using std::vector<T>::vector;bool IsEmpty(){return this->empty();}int Count(){return this->size();}void Insert(T t){this->push_back(t);}void Clear(){this->clear();}bool Contains(T t){return std::find(this->begin(),this->end(),t)!=this->end();}void Remove(int n){this->erase(this->begin()+n);}void RemoveItem(T t){this->erase(std::remove(this->begin(),this->end(),t),this->end());}};
|
||||
struct vector {float a[3]{};float&operator[](int n){return a[n];}vector operator+(vector v){return {{a[0]+v.a[0],a[1]+v.a[1],a[2]+v.a[2]}};}};
|
||||
@@ -73,7 +73,7 @@ struct Definition {ERR_SiteTransport Transport=nullptr;string Id="clue-site";vec
|
||||
struct LocationType{bool prepared=false;void SetPrepared(bool value){prepared=value;}};
|
||||
struct Site {LocationType*Location=nullptr;struct Definition* Definition=nullptr;IEntity Transport=nullptr,TransportEntity=nullptr;bool TransportAttempted=false,TransportOmitted=false;float TransportDeadline=-1;Site* Responders=nullptr;int guard=PENDING;};using ERR_SiteRuntime=Site*;
|
||||
struct Inventory{Array<IEntity>items;bool accept=true;int calls=0;void GetItems(Array<IEntity>&out){out=items;}bool TryInsertItem(IEntity){calls++;return accept;}};
|
||||
struct Placement{IEntity Item=nullptr;Inventory* Inventory_=nullptr;bool Accepted=false;};
|
||||
struct Placement{IEntity Item=nullptr;Inventory* Inventory_=nullptr;bool Accepted=false,Optional=false,Skipped=false;};
|
||||
struct Extraction{ERR_PrepareResult result=READY;int stops=0;ERR_PrepareResult Poll(float){return result;}string FailureReason(){return "aircraft failed";}void Stop(){stops++;}};
|
||||
struct ExtractionStatus{bool pickup=true;bool PickupConfigured(){return pickup;}};
|
||||
struct Mode{ExtractionStatus status;ExtractionStatus&Extraction(){return status;}Array<IEntity>owned;void Own(IEntity e){owned.Insert(e);}};
|
||||
|
||||
Reference in New Issue
Block a user