Ejemplo n.º 1
0
        public override void OnStart(StartState state)
        {
            base.OnStart(state);
            ConfigNode node = SSTUConfigNodeUtils.parseConfigNode(configNodeData);
            ConfigNode[] limitNodes = node.GetNodes("TECHLIMIT");
            int len = limitNodes.Length;
            techLimits = new TechLimitHeightDiameter[len];
            for (int i = 0; i < len; i++) { techLimits[i] = new TechLimitHeightDiameter(limitNodes[i]); }

            updateTechLimits();
            if (radius * 2 > techLimitMaxDiameter) { radius = techLimitMaxDiameter * 0.5f; }
            if (height > techLimitMaxHeight) { height = techLimitMaxHeight; }

            fuelType = new FuelTypeData(node.GetNode("FUELTYPE"));

            GameEvents.onEditorShipModified.Add(new EventData<ShipConstruct>.OnEvent(onEditorVesselModified));
            locateTransforms();
            updateModelPositions();
            updateModelScales();

            if (!initializedResources && (HighLogic.LoadedSceneIsFlight || HighLogic.LoadedSceneIsEditor))
            {
                initializedResources = true;
                updatePartResources();
            }
            updateEngineThrust();

            restoreEditorFields();
        }
        public override void OnStart(StartState state)
        {
            base.OnStart(state);
            ConfigNode node = SSTUNodeUtils.parseConfigNode(configNodeData);
            ConfigNode[] limitNodes = node.GetNodes("TECHLIMIT");
            int len = limitNodes.Length;
            techLimits = new TechLimitHeightDiameter[len];
            for (int i = 0; i < len; i++) { techLimits[i] = new TechLimitHeightDiameter(limitNodes[i]); }

            updateTechLimits();
            if (radius * 2 > techLimitMaxDiameter) { radius = techLimitMaxDiameter * 0.5f; }
            if (height > techLimitMaxHeight) { height = techLimitMaxHeight; }

            GameEvents.onEditorShipModified.Add(new EventData<ShipConstruct>.OnEvent(onEditorVesselModified));
            locateTransforms();
            updateModelPositions();
            updateModelScales();
            restoreEditorFields();
        }