#pragma once #include "MW4.hpp" #include namespace MechWarrior4 { typedef Adept::Entity__CreateMessage LightEntity__CreateMessage; typedef Adept::Entity__GameModel LightEntity__GameModel; typedef Adept::Entity__Message LightEntity__Message; typedef Adept::Entity__ExecutionStateEngine LightEntity__ExecutionStateEngine; //########################################################################## //########################## LightEntity ############################## //########################################################################## class LightEntity: public Adept::Entity { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: typedef LightEntity__CreateMessage CreateMessage; typedef LightEntity__GameModel GameModel; typedef LightEntity__Message Message; typedef LightEntity__ExecutionStateEngine ExecutionStateEngine; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static LightEntity* Make( CreateMessage *message, ReplicatorID *base_id ); protected: LightEntity( ClassData *class_data, CreateMessage *message, ReplicatorID *base_id, ElementRenderer::Element *element ); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Flag Support // public: enum { DefaultFlags = HermitMode }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Execution Support // public: int GetExecutionSlot(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance() const; }; }