12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- class ConstructionPart
- {
- string m_Name; //localized text name that is displayed ingame
- int m_Id; //a number used for synchronization and persistence purposes, must be unique and withing sync limit (total number of bits in all sync/persistence variables)
- string m_PartName; //config class name
- string m_MainPartName; //main (parent) config class name
- bool m_IsBuilt; //defines part build state
- bool m_IsBase; //defines if this part is the foundation of the whole construction
- bool m_IsGate; //defines part gate state
- ref array<string> m_RequiredParts; //list of parts required by this part
-
- void ConstructionPart( string name, string part_name, string main_part_name, int id, bool is_built, bool is_base, bool is_gate, array<string> required_parts )
- {
- m_Name = name;
- m_PartName = part_name;
- m_MainPartName = main_part_name;
- m_Id = id;
- m_IsBuilt = is_built;
- m_IsBase = is_base;
- m_IsGate = is_gate;
- m_RequiredParts = required_parts;
- }
-
- string GetName()
- {
- string ret = Widget.TranslateString(m_Name);
- return ret;
- }
-
- string GetPartName()
- {
- return m_PartName;
- }
- string GetMainPartName()
- {
- return m_MainPartName;
- }
-
- int GetId()
- {
- return m_Id;
- }
-
- bool IsBuilt()
- {
- return m_IsBuilt;
- }
-
- void SetBuiltState( bool is_built )
- {
- if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] SetBuildState=" + is_built + " part=" + m_PartName);
- m_IsBuilt = is_built;
- }
-
- void SetRequestBuiltState( bool req_built )
- {
- if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] SetRequestBuiltState=" + req_built + " part=" + m_PartName);
- if (GetGame().IsMultiplayer())
- SetBuiltState(req_built);
- else
- ; // skip set to true in single player - will be synced later
- }
-
- bool IsBase()
- {
- return m_IsBase;
- }
-
- bool IsGate()
- {
- return m_IsGate;
- }
-
- array<string> GetRequiredParts()
- {
- return m_RequiredParts;
- }
- }
|