Example #1
0
    Transform SpawnSpriteAt(Vector3 pos, bool isRight = true)
    {
        GameObject g = new GameObject("BG_" + Random.Range(1000, 9999));

        g.transform.SetParent(transform);
        g.transform.position = pos;
        g.SetLayerRecursively(gameObject.layer);
        if (isRight)
        {
            g.transform.SetAsLastSibling();
        }
        else
        {
            g.transform.SetAsFirstSibling();
        }

        SpriteRenderer s = g.AddComponent <SpriteRenderer>();

        s.sprite       = sprite;
        s.sortingOrder = spriteLayer;

        if (!isRight)
        {
            g.transform.position -= Vector3.right * g.transform.localScale.x * s.sprite.texture.width / s.sprite.pixelsPerUnit;
        }

        if (glowDuration > 0f)
        {
            Glower glower = g.AddComponent <Glower>();
            glower.alphaDuration = glowDuration;
        }

        return(g.transform);
    }
Example #2
0
        public void ShouldResolveTypesWithoutDependencies()
        {
            var glower = new Glower();

            var resolved = glower.Resolve <FooDependency>();

            resolved.Should().Not.Be.Null();
        }
Example #3
0
        public void ShouldResolveTypesWithoutDependencies()
        {
            var glower = new Glower();

            var resolved = glower.Resolve<FooDependency>();

            resolved.Should().Not.Be.Null();
        }
        public override void Tick()
        {
            base.Tick();

            if (Powered != PowerTrader.PowerOn)
            {
                Powered = PowerTrader.PowerOn;
            }

            if (Powered)
            {
                int tick = Find.TickManager.TicksGame;

                // turn on glower
                Glower.SetLit(true);

                // random blinking on secondary
                if (tick % 30 == Rand.RangeInclusive(0, 25))
                {
                    SecondaryColourIndex = (SecondaryColourIndex + 1) % _colors.Length;
                }

                // primary colour
                if (tick % ManagerStation.Props.Speed == 0)
                {
                    PrimaryColour = Manager.For(Map).TryDoWork() ? Color.green : Color.red;
                }

                // blinking on primary
                if (tick % 30 < 25)
                {
                    PrimaryColourBlinker = PrimaryColour;
                }
                else
                {
                    PrimaryColourBlinker = Color.black;
                }
            }

            // apply changes
            if (_graphicDirty)
            {
                // update LED colours
                Notify_ColorChanged();
                _graphicDirty = false;
            }
            if (_glowDirty)
            {
                // Update glow grid
                Map.glowGrid.MarkGlowGridDirty(Position);

                // the following two should not be necesarry, but for some reason do seem to be.
                Map.mapDrawer.MapMeshDirty(Position, MapMeshFlag.GroundGlow);
                Map.mapDrawer.MapMeshDirty(Position, MapMeshFlag.Things);

                _glowDirty = false;
            }
        }
Example #5
0
    // Use this for initialization
    void Start()
    {
        Glower g = GetComponentInChildren <Glower>();

        if (g != null)
        {
            g.enabled = true;
        }
    }
Example #6
0
        public void ShouldBindGenericTypes()
        {
            var glower = new Glower();

            glower.Bind<IFooDependency, FooDependency>();

            var resolved = glower.Resolve<IFooDependency>();
            resolved.Should().Not.Be.Null();
            resolved.Should().Be.OfType<FooDependency>();
        }
Example #7
0
        public void ShouldResolveBindedInstance()
        {
            var glower   = new Glower();
            var instance = new FooDependency();

            glower.Bind(instance);

            var resolved = glower.Resolve <FooDependency>();

            resolved.Should().Be.SameInstanceAs(instance);
        }
Example #8
0
        public void ShouldBindGenericTypes()
        {
            var glower = new Glower();

            glower.Bind <IFooDependency, FooDependency>();

            var resolved = glower.Resolve <IFooDependency>();

            resolved.Should().Not.Be.Null();
            resolved.Should().Be.OfType <FooDependency>();
        }
Example #9
0
        public void ShouldResolveBindedInstance()
        {
            var glower = new Glower();
            var instance = new FooDependency();

            glower.Bind(instance);

            var resolved = glower.Resolve<FooDependency>();

            resolved.Should().Be.SameInstanceAs(instance);
        }
Example #10
0
        public void ShouldResolveTypeWithDependencies()
        {
            var glower = new Glower();

            glower.Bind <IFooDependency, FooDependency>();
            glower.Bind <INestedDependency, NestedDependency>();
            glower.Bind <IAnotherFooDependency, AnotherFooDependency>();

            var foo = glower.Resolve <Foo>();

            foo.Should().Not.Be.Null();
        }
Example #11
0
 public virtual void drawGlow()
 {
     if (AMAMod.settings.AllowProjectileGlow)
     {
         if (!Glower.NullOrEmpty())
         {
             foreach (GlowerProjectileExtension glower in Glower)
             {
                 glower.Glow(this, this.ExactRotation);
             }
         }
     }
 }
Example #12
0
        void SetInactive()
        {
            PowerCompTrader.PowerOn = !PowerCompTrader.PowerOn;
            Glower?.UpdateLit(Map);


            PowerCompTrader.PowerOn = false;
            if (Glower != null)
            {
                Glower.Props.glowColor = Clear;
                Glower.UpdateLit(Map);
                Log.Message($"{ThingID} {Glower.Glows}|{PowerCompTrader.PowerOn}");
            }
        }
Example #13
0
        private void SetActive()
        {
            FillableDrawer?.Trigger();
            PowerCompTrader.PowerOn = !PowerCompTrader.PowerOn;
            Glower?.UpdateLit(Map);

            PowerCompTrader.PowerOn = true;
            if (Glower != null)
            {
                Glower.Props.glowColor = GlowColor;
                Glower.UpdateLit(Map);
                Log.Message($"{ThingID} {Glower.Glows}|{PowerCompTrader.PowerOn}");
            }
        }
Example #14
0
 void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.CompareTag("Gabber") && isActiveAndEnabled)
     {
         //transform.localScale = transform.localScale * 1.5;
         transform.parent = other.gameObject.transform;
         GetComponent <Rigidbody>().isKinematic = true;
         //GameController.instance.showCabinet();
         Glower g = GetComponentInChildren <Glower>();
         if (g != null)
         {
             g.Reset();
             g.enabled = false;
         }
     }
     if (other.gameObject.CompareTag("GoalObject") && isActiveAndEnabled)
     {
         //transform.localScale = transform.localScale * 1.5;
         GetComponentInChildren <ParticleSystem>().Play();
         Destroy(gameObject, GetComponentInChildren <ParticleSystem>().duration);
     }
 }
Example #15
0
        public void ShouldResolveTypeWithDependencies()
        {
            var glower = new Glower();

            glower.Bind<IFooDependency, FooDependency>();
            glower.Bind<INestedDependency, NestedDependency>();
            glower.Bind<IAnotherFooDependency, AnotherFooDependency>();

            var foo = glower.Resolve<Foo>();

            foo.Should().Not.Be.Null();
        }