#pragma once #include #include "MW4\rail_move.hpp" #include "MW4\Path.hpp" #include #include #include #include #include #include typedef Adept::Entity__CreateMessage EditorWaypoint__CreateMessage; typedef Adept::Entity__Message EditorWaypoint__Message; class EditorWaypoint : public Adept::Entity { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorWaypoint__CreateMessage CreateMessage; typedef EditorWaypoint__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorWaypoint* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorWaypoint( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorWaypoint(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); }; class EditorMovementPath; typedef Adept::Entity__CreateMessage EditorPathNode__CreateMessage; typedef Adept::Entity__Message EditorPathNode__Message; class EditorPathNode : public EditorWaypoint { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorPathNode__CreateMessage CreateMessage; typedef EditorPathNode__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorPathNode* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorPathNode( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorPathNode(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // public: Stuff::SlotOf pathSlot; int index; EditorPathNode* nextnode; EditorPathNode* prevnode; ElementRenderer::LineCloudElement* m_PathLinkLineCloud; Stuff::Point3D m_PathLinkPointData[2]; Stuff::RGBAColor m_PathLinkColorData[2]; unsigned m_PathLinkPointCount; void CreateLink(); void UpdateLinkPointData(bool calledFromOtherNode = false); void ShowLink(bool show) { if (show) { m_PathLinkLineCloud->SetNeverCullMode(); } else m_PathLinkLineCloud->SetAlwaysCullMode(); m_PathLinkLineCloud->Sync(); } void SetLinkColor(Stuff::RGBAColor rgb) { m_PathLinkColorData[0] = m_PathLinkColorData[1] = rgb; } void InsertNode(EditorPathNode* node); }; typedef Adept::Entity__CreateMessage EditorMovementPath__CreateMessage; typedef Adept::Entity__Message EditorMovementPath__Message; class EditorMovementPath : public Adept::Entity { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorMovementPath__CreateMessage CreateMessage; typedef EditorMovementPath__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorMovementPath* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorMovementPath( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorMovementPath(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // public: Stuff::SlotOf pathSlot; Stuff::ChainOf pathNodes; }; typedef Adept::Entity__CreateMessage EditorBoundaryNode__CreateMessage; typedef Adept::Entity__Message EditorBoundaryNode__Message; class EditorBoundaryNode : public EditorWaypoint { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorBoundaryNode__CreateMessage CreateMessage; typedef EditorBoundaryNode__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorBoundaryNode* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorBoundaryNode( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorBoundaryNode(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // int index; EditorBoundaryNode* nextnode; EditorBoundaryNode* prevnode; DynamicArrayOf > *myBoundary; EditorBoundaryNode* firstBoundaryNode; ElementRenderer::LineCloudElement* m_PathLinkLineCloud; Stuff::Point3D m_PathLinkPointData[2]; Stuff::RGBAColor m_PathLinkColorData[2]; unsigned m_PathLinkPointCount; void CreateLink(); void UpdateLinkPointData(bool calledFromOtherNode = false); void ShowLink(bool show) { if (show) { m_PathLinkLineCloud->SetNeverCullMode(); } else m_PathLinkLineCloud->SetAlwaysCullMode(); m_PathLinkLineCloud->Sync(); } void SetLinkColor(Stuff::RGBAColor rgb) { m_PathLinkColorData[0] = m_PathLinkColorData[1] = rgb; } void InsertNode(EditorBoundaryNode* node); bool CheckValidPos(); }; // accessed through MW4AI::g_MissionGraph typedef Adept::Entity__CreateMessage EditorLatticeNode__CreateMessage; typedef Adept::Entity__Message EditorLatticeNode__Message; class EditorLatticeNode : public EditorWaypoint { public: public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorLatticeNode__CreateMessage CreateMessage; typedef EditorLatticeNode__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorLatticeNode* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorLatticeNode( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorLatticeNode(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // public: MW4AI::CRailNode* railNode; }; typedef Adept::Entity__CreateMessage EditorDropZonePoint__CreateMessage; typedef Adept::Entity__Message EditorDropZonePoint__Message; class EditorDropNode; class EditorDropZonePoint : public EditorWaypoint { public: public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorDropZonePoint__CreateMessage CreateMessage; typedef EditorDropZonePoint__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorDropZonePoint* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorDropZonePoint( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorDropZonePoint(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // EditorDropNode* dropNode; Stuff::Point3D offset; ElementRenderer::LineCloudElement* m_PointLineCloud; Stuff::Point3D m_PointData[2]; Stuff::RGBAColor m_PointColorData[2]; unsigned m_PointCount; void CreateLink(); void UpdateLinkPointData(); void ShowLink(bool show) { if (show) { m_PointLineCloud->SetNeverCullMode(); } else m_PointLineCloud->SetAlwaysCullMode(); m_PointLineCloud->Sync(); } void SetLinkColor(Stuff::RGBAColor rgb) { m_PointColorData[0] = m_PointColorData[1] = rgb; } }; typedef Adept::Entity__CreateMessage EditorDropNode__CreateMessage; typedef Adept::Entity__Message EditorDropNode__Message; class EditorDropNode : public EditorWaypoint { public: public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorDropNode__CreateMessage CreateMessage; typedef EditorDropNode__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorDropNode* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorDropNode( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorDropNode(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // public: Adept::DropZone* dropZone; Stuff::ChainOf pointChain; void SetDropZone(Adept::DropZone* zone); void UpdatePoints(); void MakePointsResource(const char *resource_name); }; typedef Adept::Entity__CreateMessage EditorObjectiveMarker__CreateMessage; typedef Adept::Entity__Message EditorObjectiveMarker__Message; class EditorObjectiveMarker : public EditorWaypoint { public: public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorObjectiveMarker__CreateMessage CreateMessage; typedef EditorObjectiveMarker__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorObjectiveMarker* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorObjectiveMarker( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorObjectiveMarker(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data // public: MechWarrior4::Objective* objective; void SetObjective(MechWarrior4::Objective* obj); }; typedef Adept::Entity__CreateMessage EditorLight__CreateMessage; typedef Adept::Entity__Message EditorLight__Message; class EditorLight : public Adept::Entity { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorLight__CreateMessage CreateMessage; typedef EditorLight__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorLight* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorLight( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorLight(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); gosFX::Light* light; gosFX::LightManager::Info lightInfo; Stuff::Scalar lastIntensity; void SetColor(Stuff::Scalar Red, Stuff::Scalar Green, Stuff::Scalar Blue); void SetLightToWorldMatrix(Stuff::LinearMatrix4D matrix); void UpdateLight(); void LightSwitch(); void SetLight(gosFX::Light* gosLight = NULL); }; typedef Adept::Entity__CreateMessage EditorAmbientLight__CreateMessage; typedef Adept::Entity__Message EditorAmbientLight__Message; class EditorAmbientLight : public EditorLight { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorAmbientLight__CreateMessage CreateMessage; typedef EditorAmbientLight__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorAmbientLight* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorAmbientLight( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorAmbientLight(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); }; typedef Adept::Entity__CreateMessage EditorInfiniteLight__CreateMessage; typedef Adept::Entity__Message EditorInfiniteLight__Message; class EditorInfiniteLight : public EditorLight { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorInfiniteLight__CreateMessage CreateMessage; typedef EditorInfiniteLight__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorInfiniteLight* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorInfiniteLight( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorInfiniteLight(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); }; typedef Adept::Entity__CreateMessage EditorPointLight__CreateMessage; typedef Adept::Entity__Message EditorPointLight__Message; class EditorPointLight : public EditorLight { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorPointLight__CreateMessage CreateMessage; typedef EditorPointLight__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorPointLight* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorPointLight( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorPointLight(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); }; typedef Adept::Entity__CreateMessage EditorSpotLight__CreateMessage; typedef Adept::Entity__Message EditorSpotLight__Message; class EditorSpotLight : public EditorLight { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorSpotLight__CreateMessage CreateMessage; typedef EditorSpotLight__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorSpotLight* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorSpotLight( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorSpotLight(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); }; typedef Adept::Entity__CreateMessage EditorCameraShip__CreateMessage; typedef Adept::Entity__Message EditorCameraShip__Message; class EditorCameraShip : public Adept::Entity { public: static void InitializeClass(); static void TerminateClass(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // typedef EditorCameraShip__CreateMessage CreateMessage; typedef EditorCameraShip__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Run-time Construction and Destruction Support // public: static EditorCameraShip* Make( CreateMessage *message, Adept::ReplicatorID *base_id ); protected: EditorCameraShip( ClassData *class_data, CreateMessage *message, Adept::ReplicatorID *base_id, ElementRenderer::Element *element ); ~EditorCameraShip(); public: MechWarrior4::CameraShip* cameraShip; void SetCameraShip(MechWarrior4::CameraShip* ship); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Shared Data support // public: static ClassData *DefaultData; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Test Support // public: void TestInstance(); };