Example #1
0
        public override void SetStaticDefaults()
        {
            base.SetStaticDefaults();

            ClickEffect.Collision = ClickerSystem.RegisterClickEffect(Mod, "Collision", null, null, 10, new Color(150, 150, 225), delegate(Player player, EntitySource_ItemUse_WithAmmo source, Vector2 position, int type, int damage, float knockBack)
            {
                bool spawnEffects = true;
                for (int k = 0; k < 8; k++)
                {
                    float hasSpawnEffects = spawnEffects ? 1f : 0f;
                    Projectile.NewProjectile(source, position.X, position.Y, Main.rand.NextFloat(-2f, 2f), Main.rand.NextFloat(-2f, 2f), ModContent.ProjectileType <MiceClickerPro>(), (int)(damage * 0.75f), knockBack, player.whoAmI, (int)DateTime.Now.Ticks, hasSpawnEffects);
                    spawnEffects = false;
                }
            });

            if (!Main.dedServ)
            {
                glowmask = ModContent.Request <Texture2D>(Texture + "_Glow");

                HeldItemLayer.RegisterData(Item.type, new DrawLayerData()
                {
                    Texture = glowmask,
                    Color   = (PlayerDrawSet drawInfo) => new Color(255, 255, 255, 50) * 0.7f
                });
            }
        }
Example #2
0
        public override void SetStaticDefaults()
        {
            base.SetStaticDefaults();

            ClickEffect.Rainbolt = ClickerSystem.RegisterClickEffect(Mod, "Rainbolt", null, null, 8, () => Color.Lerp(Color.White, Main.DiscoColor, 0.5f), delegate(Player player, EntitySource_ItemUse_WithAmmo source, Vector2 position, int type, int damage, float knockBack)
            {
                bool spawnEffects = true;
                for (int k = 0; k < 4; k++)
                {
                    //Projectile.NewProjectile(source, position, new Vector2(Main.rand.NextFloat(-3f, 3f), Main.rand.NextFloat(-3f, 3f)), ModContent.ProjectileType<RainbowClickerPro>(), (int)(damage * 0.5f), knockBack, player.whoAmI, hasSpawnEffects);

                    Vector2 spawnVelocity = Main.rand.NextVector2Circular(1f, 1f) + Main.rand.NextVector2CircularEdge(3f, 3f);
                    int projType          = ProjectileID.FairyQueenMagicItemShot;      //This projectile decreases damage by 20% each hit, fixed homing speed of 30
                    float targetIndex     = spawnEffects ? -2f : -1f;                  //Normally -1f, we intercept it
                    float randomColor     = player.miscCounterNormalized % 1f;
                    Projectile.NewProjectile(source, position, spawnVelocity, projType, (int)(damage * 0.5f), knockBack, player.whoAmI, targetIndex, randomColor);
                    spawnEffects = false;
                }
            });

            if (!Main.dedServ)
            {
                glowmask = ModContent.Request <Texture2D>(Texture + "_Glow");

                HeldItemLayer.RegisterData(Item.type, new DrawLayerData()
                {
                    Texture = glowmask,
                    Color   = (PlayerDrawSet drawInfo) => new Color(255, 255, 255, 50) * 0.75f
                });
            }
        }
        public override void SetStaticDefaults()
        {
            if (!Main.dedServ)
            {
                glowmask = ModContent.Request <Texture2D>(Texture + "_Glow");

                HeldItemLayer.RegisterData(Item.type, new DrawLayerData()
                {
                    Texture = glowmask,
                    Color   = (PlayerDrawSet drawInfo) => new Color(255, 255, 255, 50) * 0.7f
                });
            }

            CreativeItemSacrificesCatalog.Instance.SacrificeCountNeededByItemId[Type] = 1;
        }
Example #4
0
        public override void SetStaticDefaults()
        {
            base.SetStaticDefaults();

            ClickEffect.Smite = ClickerSystem.RegisterClickEffect(Mod, "Smite", null, null, 10, new Color(255, 245, 225), delegate(Player player, EntitySource_ItemUse_WithAmmo source, Vector2 position, int type, int damage, float knockBack)
            {
                SoundEngine.PlaySound(SoundID.Item, (int)position.X, (int)position.Y, 42);

                //Temporary effect//
                //Consider idea where up to 10 nearby torches fire their respective flame color towards cursor and each one does something different on hit
                for (int k = 0; k < 4 + Main.rand.Next(5); k++)
                {
                    float xChoice     = Main.rand.Next(-100, 101);
                    float yChoice     = Main.rand.Next(-100, 101);
                    xChoice          += xChoice > 0 ? 200 : -200;
                    yChoice          += yChoice > 0 ? 200 : -200;
                    Vector2 startSpot = new Vector2(position.X + xChoice, position.Y + yChoice);
                    Vector2 endSpot   = new Vector2(position.X + Main.rand.Next(-10, 11), position.Y + Main.rand.Next(-10, 11));
                    Vector2 vector    = endSpot - startSpot;
                    float speed       = 2f;
                    float mag         = vector.Length();
                    if (mag > speed)
                    {
                        mag     = speed / mag;
                        vector *= mag;
                    }

                    int torch = ModContent.ProjectileType <TorchClickerPro>();
                    Projectile.NewProjectile(source, startSpot, vector, torch, (int)(damage * 0.25f), 0f, player.whoAmI, 0f, 0f);
                }
            });

            if (!Main.dedServ)
            {
                glowmask = ModContent.Request <Texture2D>(Texture + "_Glow");

                HeldItemLayer.RegisterData(Item.type, new DrawLayerData()
                {
                    Texture = glowmask,
                    Color   = (PlayerDrawSet drawInfo) => new Color(255, 255, 255, 50) * 0.75f
                });
            }
        }
        public override void SetStaticDefaults()
        {
            base.SetStaticDefaults();

            ClickEffect.Spiral = ClickerSystem.RegisterClickEffect(Mod, "Spiral", null, null, 15, new Color(150, 150, 225), delegate(Player player, EntitySource_ItemUse_WithAmmo source, Vector2 position, int type, int damage, float knockBack)
            {
                Projectile.NewProjectile(source, position, Vector2.Zero, ModContent.ProjectileType <AstralClickerPro>(), (int)(damage * 4f), 0f, player.whoAmI);
            });

            if (!Main.dedServ)
            {
                glowmask = ModContent.Request <Texture2D>(Texture + "_Glow");

                HeldItemLayer.RegisterData(Item.type, new DrawLayerData()
                {
                    Texture = glowmask,
                    Color   = (PlayerDrawSet drawInfo) => new Color(255, 255, 255, 50) * 0.7f
                });
            }
        }