示例#1
0
 public void debugMessage(string input)
 {
     if (debugMode)
     {
         FSdebugMessages.Post(input, true, 5f);
     }
 }
 public override void OnStart(PartModule.StartState state)
 {
     base.OnStart(state);
     if (nodeLoader == null)
     {
         FSdebugMessages.Post("FSnodeLoaderTest is null, creating new one (OnStart)", true, 0f);
         nodeLoader = new FSnodeLoader(part, moduleName, moduleID, "trim", "amount");
         nodeLoader.OnStart();
     }
     else
     {
         FSdebugMessages.Post("FSnodeLoaderTest OnStart: nodeLoader not null", true, 0f);
         trimList = nodeLoader.OnStart();
         if (trimList.Count > 0)
         {
             for (int i = 0; i < trimList.Count; i++)
             {
                 FSdebugMessages.Post("FSnodeLoaderTest: trim " + i + ": " + trimList[i], true, 5f);
             }
         }
         else
         {
             FSdebugMessages.Post("FSnodeLoaderTest: trimList is empty", true, 5f);
         }
     }
 }
        // runs the kind of commands that would normally be in OnStart, if they have not already been run. In case a method is called upon externally, but values have not been set up yet
        private void initializeData()
        {
            if (!initialized)
            {
                debug = new FSdebugMessages(debugMode, "FStextureSwitch2");
                // you can't have fuel switching without symmetry, it breaks the editor GUI.
                if (useFuelSwitchModule)
                {
                    updateSymmetry = true;
                }

                objectList         = Tools.parseNames(objectNames, true);
                texList            = Tools.parseNames(textureNames, true, true, textureRootFolder);
                mapList            = Tools.parseNames(mapNames, true, true, textureRootFolder);
                textureDisplayList = Tools.parseNames(textureDisplayNames);
                fuelTankSetupList  = Tools.parseIntegers(fuelTankSetups);

                debug.debugMessage("found " + texList.Count + " textures, using number " + selectedTexture + ", found " + objectList.Count + " objects, " + mapList.Count + " maps");

                foreach (String targetObjectName in objectList)
                {
                    Transform[]     targetObjectTransformArray = part.FindModelTransforms(targetObjectName);
                    List <Material> matList = new List <Material>();
                    foreach (Transform t in targetObjectTransformArray)
                    {
                        if (t != null && t.gameObject.GetComponent <Renderer>() != null) // check for if the object even has a mesh. otherwise part list loading crashes
                        {
                            Material targetMat = t.gameObject.GetComponent <Renderer>().material;
                            if (targetMat != null)
                            {
                                if (!matList.Contains(targetMat))
                                {
                                    matList.Add(targetMat);
                                }
                            }
                        }
                    }
                    targetMats.Add(matList);
                }

                if (useFuelSwitchModule)
                {
                    fuelSwitch = part.GetComponent <FSfuelSwitch>(); // only looking for first, not supporting multiple fuel switchers
                    if (fuelSwitch == null)
                    {
                        useFuelSwitchModule = false;
                        debug.debugMessage("no FSfuelSwitch module found, despite useFuelSwitchModule being true");
                    }
                }
                initialized = true;
            }
        }
 public override void OnLoad(ConfigNode node)
 {
     base.OnLoad(node);
     if (nodeLoader == null)
     {
         FSdebugMessages.Post("FSnodeLoaderTest is null, creating new one (OnLoad)", true, 0f);
         nodeLoader = new FSnodeLoader(part, moduleName, moduleID, "trim", "amount");
         nodeLoader.OnLoad(node);
     }
     else
     {
         FSdebugMessages.Post("FSnodeLoaderTest OnLoad: nodeLoader not null", true, 0f);
     }
 }
示例#5
0
 void OnTriggerEnter(Collider other)
 {
     FSdebugMessages.Post("hit " + other.name, true, 5f);
 }