/// <summary>
 /// Geturns a Facility by its type
 /// </summary>
 /// <param name="facilityType"></param>
 /// <returns></returns>
 internal KKFacility GetFacility(KKFacilityType facilityType)
 {
     foreach (KKFacility facility in myFacilities)
     {
         if (facility.facType == facilityType)
         {
             return(facility);
         }
     }
     return(null);
 }
        internal void Initialize()
        {
            staticInstance = facility.staticInstance;

            if (this.gameObject == null)
            {
                Destroy(this);
            }
            if (staticInstance == null)
            {
                staticInstance = InstanceUtil.GetStaticInstanceForGameObject(this.gameObject);
            }
            if (staticInstance == null)
            {
                Log.UserInfo("Cound not determin instance for mouse selector");
                Destroy(this);
            }
            facType     = facility.facType;
            initialized = true;
        }
Example #3
0
        internal virtual KKFacility ParseConfig(ConfigNode cfgNode)
        {
            if (!initialized)
            {
                InitTypes();
            }

            myFields = allFields[this.GetType().Name];

            foreach (var field in myFields.Values)
            {
                if (Attribute.IsDefined(field, typeof(CFGSetting)))
                {
                    ConfigUtil.ReadCFGNode(this, field, cfgNode);
                }
            }

            myProperties = allProperties[this.GetType().Name];

            foreach (var field in myProperties.Values)
            {
                if (Attribute.IsDefined(field, typeof(CFGSetting)))
                {
                    ConfigUtil.ReadCFGNode(this, field, cfgNode);
                }
                if (field.Name == "OpenCloseState")
                {
                    defaultState = openString;
                }
            }

            FacilityType = this.GetType().Name;
            facType      = (KKFacilityType)Enum.Parse(typeof(KKFacilityType), FacilityType, true);
            AttachSelector();

            OnPostSetup();


            return(this);
        }