private bool FindActiveGenerator(Generator g)
    {
        Operational     component  = g.GetComponent <Operational>();
        ManualGenerator component2 = g.GetComponent <ManualGenerator>();

        if ((Object)component2 == (Object)null)
        {
            return(component.IsActive);
        }
        return(component.IsOperational && component2.IsPowered);
    }
    public override void DoPostConfigureComplete(GameObject go)
    {
        GeneratedBuildings.RegisterLogicPorts(go, LogicOperationalController.INPUT_PORTS_0_0);
        go.AddOrGet <LogicOperationalController>();
        go.GetComponent <KPrefabID>().AddTag(RoomConstraints.ConstraintTags.IndustrialMachinery, false);
        go.AddOrGet <BuildingComplete>().isManuallyOperated = true;
        go.AddOrGet <LoopingSounds>();
        Prioritizable.AddRef(go);
        Generator generator = go.AddOrGet <Generator>();

        generator.powerDistributionOrder = 10;
        ManualGenerator manualGenerator = go.AddOrGet <ManualGenerator>();

        manualGenerator.SetSliderValue(50f, 0);
        manualGenerator.workLayer = Grid.SceneLayer.BuildingFront;
        KBatchedAnimController kBatchedAnimController = go.AddOrGet <KBatchedAnimController>();

        kBatchedAnimController.fgLayer     = Grid.SceneLayer.BuildingFront;
        kBatchedAnimController.initialAnim = "off";
        Tinkerable.MakePowerTinkerable(go);
    }
            public static void Postfix(ref Worker worker, float dt, ref ManualGenerator __instance)
            {
                if (!Settings.Instance.Gym.IncludeRoom)
                {
                    return;
                }
                if (RoomTypes_AllModded.IsInTheRoom(__instance, RoomTypeGymData.RoomId))
                {
                    if (string.IsNullOrEmpty(AthleticsId))
                    {
                        AthleticsId = Db.Get().Attributes.Athletics.Id;
                    }

                    AttributeLevels component = worker.GetComponent <AttributeLevels>();
                    if (component != null && Settings.Instance.Gym.Bonus.HasValue)
                    {
                        component.AddExperience(AthleticsId,
                                                dt * Settings.Instance.Gym.Bonus.Value,
                                                DUPLICANTSTATS.ATTRIBUTE_LEVELING.ALL_DAY_EXPERIENCE);
                    }
                }
            }
Пример #4
0
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Mouse0))
        {
            fromTag.enabled            = true;
            toTag.enabled              = true;
            line.enabled               = true;
            fromTag.transform.position = from = Util.cursorWorldPosition;
        }

        if (toTag.enabled)
        {
            toTag.transform.position = to = Util.cursorWorldPosition;
        }
        if (line.enabled)
        {
            line.SetPositions(new Vector3[] { from, to });
        }

        if (Input.GetKeyUp(KeyCode.Mouse0))
        {
            var gen = new ManualGenerator()
            {
                maxNodeConnection = 100,
                mergeDist         = Util.eps
            };

            var seg = gen.Validate(new Segment(from, to), storage);
            if (seg != null)
            {
                mesh.AddSegment(seg.Value);
                storage.Add(seg.Value);
            }
            fromTag.enabled = false;
            toTag.enabled   = false;
            line.enabled    = false;
        }
    }
 public void RemoveManualGenerator(ManualGenerator manual_generator)
 {
     manualGenerators.Remove(manual_generator);
 }
 public void AddManualGenerator(ManualGenerator manual_generator)
 {
     manualGenerators.Add(manual_generator);
 }