public override void Attributes(TerraGuardian g) { g.AddFlag(GuardianFlags.CantBeKnockedOutCold); g.AddFlag(GuardianFlags.CantTakeDamageWhenKod); g.AddFlag(GuardianFlags.CantReceiveHelpOnReviving); g.AddFlag(GuardianFlags.HideKOBar); g.AddFlag(GuardianFlags.NotPulledWhenKOd); }
public override void Attributes(TerraGuardian g) { g.MagicDamageMultiplier += 0.15f; g.MagicCriticalRate += 10; g.DefenseRate -= 0.03f; //0.07f g.AddFlag(GuardianFlags.AllowHopping); }
public override void ItemStatusScript(TerraGuardian g) { if (!g.Base.IsTerraGuardian) { return; } g.ScaleMult *= 3; g.MHP = (int)(g.MHP * 1.8f); g.MeleeDamageMultiplier += g.MeleeDamageMultiplier * 0.2f; g.RangedDamageMultiplier += g.RangedDamageMultiplier * 0.2f; g.MagicDamageMultiplier += g.MagicDamageMultiplier * 0.2f; g.SummonDamageMultiplier += g.SummonDamageMultiplier * 0.2f; g.Defense += (int)(g.Defense * 0.2f); //Guardian.DefenseRate += Guardian.DefenseRate * 0.2f; g.MeleeSpeed += g.MeleeSpeed * 0.2f; g.MoveSpeed -= g.MoveSpeed * 0.1f; g.Aggro += 300; g.AddFlag(GuardianFlags.TitanGuardian); }
public override void Attributes(TerraGuardian g) { g.RangedDamageMultiplier += 0.03f; g.AddFlag(GuardianFlags.NoWarnUponLeaving); }
public static void ApplyAccessoryEffect(TerraGuardian guardian, Item i) { if (i.type == 0) { return; } switch (i.type) { case ItemID.BandofStarpower: guardian.MMP += 20; break; case ItemID.ManaRegenerationBand: guardian.MMP += 20; guardian.ManaRegenBonus += 25; guardian.AddFlag(GuardianFlags.ManaRegenDelayReduction); break; case ItemID.MagicCuffs: guardian.MMP += 20; guardian.ManaRegenBonus += 25; guardian.AddFlag(GuardianFlags.MagicCuffs); guardian.AddFlag(GuardianFlags.ManaRegenDelayReduction); break; case ItemID.CelestialMagnet: guardian.AddFlag(GuardianFlags.StarMagnet); break; case ItemID.CelestialCuffs: guardian.MMP += 20; guardian.ManaRegenBonus += 25; guardian.AddFlag(GuardianFlags.MagicCuffs); guardian.AddFlag(GuardianFlags.ManaRegenDelayReduction); guardian.AddFlag(GuardianFlags.StarMagnet); break; case ItemID.CelestialEmblem: guardian.AddFlag(GuardianFlags.StarMagnet); guardian.MagicDamageMultiplier += 0.15f; break; case ItemID.NaturesGift: guardian.ManaCostMult -= 0.06f; break; case ItemID.ManaFlower: guardian.ManaCostMult -= 0.08f; guardian.AddFlag(GuardianFlags.AutoManaPotion); break; case ItemID.Aglet: guardian.MoveSpeed += 0.05f; break; case ItemID.ShinyRedBalloon: case ItemID.BalloonPufferfish: guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.FartinaJar: guardian.AddFlag(GuardianFlags.ExtraJumpFart); break; case ItemID.CloudinaBottle: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); break; case ItemID.BlizzardinaBottle: guardian.AddFlag(GuardianFlags.ExtraJumpBlizzard); break; case ItemID.TsunamiInABottle: guardian.AddFlag(GuardianFlags.ExtraJumpWater); break; case ItemID.SandstorminaBottle: guardian.AddFlag(GuardianFlags.ExtraJumpSand); break; case ItemID.CloudinaBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.BlizzardinaBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpBlizzard); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.SandstorminaBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpSand); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.SharkronBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); guardian.AddFlag(GuardianFlags.ExtraJumpWater); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.BalloonHorseshoeSharkron: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); guardian.AddFlag(GuardianFlags.ExtraJumpWater); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.BundleofBalloons: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); guardian.AddFlag(GuardianFlags.ExtraJumpBlizzard); guardian.AddFlag(GuardianFlags.ExtraJumpSand); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.LuckyHorseshoe: guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.AnkletoftheWind: guardian.MoveSpeed += 0.1f; break; case ItemID.HermesBoots: case ItemID.FlurryBoots: case ItemID.SailfishBoots: guardian.DashSpeed = guardian.Base.MaxSpeed * 2; break; case ItemID.SpectreBoots: guardian.DashSpeed = guardian.Base.MaxSpeed * 2; guardian.RocketType = 2; break; case ItemID.RocketBoots: guardian.RocketType = 1; break; case ItemID.LightningBoots: guardian.DashSpeed = guardian.Base.MaxSpeed * 2.25f; guardian.RocketType = 2; guardian.MoveSpeed += 0.08f; break; case ItemID.FrostsparkBoots: guardian.DashSpeed = guardian.Base.MaxSpeed * 2.25f; guardian.RocketType = 3; guardian.MoveSpeed += 0.08f; guardian.AddFlag(GuardianFlags.IceSkating); break; case ItemID.IceSkates: guardian.AddFlag(GuardianFlags.IceSkating); break; case ItemID.BlueHorseshoeBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpCloud); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.WhiteHorseshoeBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpBlizzard); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.YellowHorseshoeBalloon: guardian.AddFlag(GuardianFlags.ExtraJumpSand); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.BalloonHorseshoeFart: guardian.AddFlag(GuardianFlags.ExtraJumpFart); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.BalloonHorseshoeHoney: guardian.AddFlag(GuardianFlags.BeeCounter); guardian.AddFlag(GuardianFlags.JumpHeightBoost); guardian.AddFlag(GuardianFlags.FallDamageImmunity); break; case ItemID.ObsidianHorseshoe: guardian.AddFlag(GuardianFlags.FallDamageImmunity); guardian.AddFlag(GuardianFlags.FireblocksImmunity); break; case ItemID.HoneyComb: guardian.AddFlag(GuardianFlags.BeeCounter); break; case ItemID.HoneyBalloon: guardian.AddFlag(GuardianFlags.BeeCounter); guardian.AddFlag(GuardianFlags.JumpHeightBoost); break; case ItemID.Flipper: guardian.AddFlag(GuardianFlags.SwimmingAbility); break; case ItemID.DivingGear: guardian.AddFlag(GuardianFlags.ExtendedBreath); guardian.AddFlag(GuardianFlags.SwimmingAbility); break; case ItemID.JellyfishNecklace: guardian.AddFlag(GuardianFlags.UnderwaterJellyfishGlow); break; case ItemID.JellyfishDivingGear: guardian.AddFlag(GuardianFlags.ExtendedBreath); guardian.AddFlag(GuardianFlags.SwimmingAbility); guardian.AddFlag(GuardianFlags.UnderwaterJellyfishGlow); break; case ItemID.ArcticDivingGear: guardian.AddFlag(GuardianFlags.ExtendedBreath); guardian.AddFlag(GuardianFlags.SwimmingAbility); guardian.AddFlag(GuardianFlags.UnderwaterJellyfishGlow); guardian.AddFlag(GuardianFlags.IceSkating); break; case ItemID.ClimbingClaws: guardian.AddFlag(GuardianFlags.ClimbingClaws); break; case ItemID.ShoeSpikes: guardian.AddFlag(GuardianFlags.ClimbingPaws); break; case ItemID.TigerClimbingGear: guardian.AddFlag(GuardianFlags.ClimbingClaws); guardian.AddFlag(GuardianFlags.ClimbingPaws); break; case ItemID.MasterNinjaGear: guardian.AddFlag(GuardianFlags.ClimbingClaws); guardian.AddFlag(GuardianFlags.ClimbingPaws); guardian.AddFlag(GuardianFlags.Dash); guardian.DodgeRate += 10; break; case ItemID.Tabi: guardian.AddFlag(GuardianFlags.Dash); break; case ItemID.BlackBelt: guardian.DodgeRate += 10; break; case ItemID.FrogLeg: guardian.AddFlag(GuardianFlags.AllowHopping); guardian.JumpSpeed += 2.4f; guardian.FallHeightTolerance += 15; break; case ItemID.LavaCharm: guardian.AddFlag(GuardianFlags.LavaTolerance); break; case ItemID.WaterWalkingBoots: guardian.AddFlag(GuardianFlags.WaterWalking); break; case ItemID.ObsidianWaterWalkingBoots: guardian.AddFlag(GuardianFlags.WaterWalking); guardian.AddFlag(GuardianFlags.FireblocksImmunity); break; case ItemID.LavaWaders: guardian.AddFlag(GuardianFlags.LavaTolerance); guardian.AddFlag(GuardianFlags.WaterWalking); guardian.AddFlag(GuardianFlags.FireblocksImmunity); break; case ItemID.CobaltShield: guardian.AddFlag(GuardianFlags.KnockbackImmunity); break; case ItemID.ObsidianShield: guardian.AddFlag(GuardianFlags.KnockbackImmunity); guardian.AddFlag(GuardianFlags.FireblocksImmunity); break; case ItemID.AnkhShield: guardian.AddFlag(GuardianFlags.KnockbackImmunity); guardian.AddFlag(GuardianFlags.FireblocksImmunity); guardian.AddBuffImmunity(BuffID.Bleeding); guardian.AddBuffImmunity(BuffID.BrokenArmor); guardian.AddBuffImmunity(BuffID.Confused); guardian.AddBuffImmunity(BuffID.Cursed); guardian.AddBuffImmunity(BuffID.Darkness); guardian.AddBuffImmunity(BuffID.Poisoned); guardian.AddBuffImmunity(BuffID.Silenced); guardian.AddBuffImmunity(BuffID.Slow); guardian.AddBuffImmunity(BuffID.Weak); guardian.AddBuffImmunity(BuffID.Burning); break; case ItemID.StarCloak: guardian.AddFlag(GuardianFlags.StarCounter); break; case ItemID.CrossNecklace: guardian.AddFlag(GuardianFlags.ImprovedImmuneTime); break; case ItemID.StarVeil: guardian.AddFlag(GuardianFlags.ImprovedImmuneTime); guardian.AddFlag(GuardianFlags.StarCounter); break; case ItemID.BeeCloak: guardian.AddFlag(GuardianFlags.StarCounter); guardian.AddFlag(GuardianFlags.BeeCounter); break; case ItemID.AvengerEmblem: guardian.MeleeDamageMultiplier += 0.12f; guardian.RangedDamageMultiplier += 0.12f; guardian.MagicDamageMultiplier += 0.12f; guardian.SummonDamageMultiplier += 0.12f; break; case ItemID.WarriorEmblem: guardian.MeleeDamageMultiplier += 0.15f; break; case ItemID.RangerEmblem: guardian.RangedDamageMultiplier += 0.15f; break; case ItemID.SorcererEmblem: guardian.MagicDamageMultiplier += 0.15f; break; case ItemID.SummonerEmblem: guardian.SummonDamageMultiplier += 0.15f; break; case ItemID.MoonCharm: guardian.AddFlag(GuardianFlags.WerewolfAcc); break; case ItemID.FlowerBoots: guardian.AddFlag(GuardianFlags.FlowerBoots); break; case ItemID.NeptunesShell: guardian.AddFlag(GuardianFlags.MerfolkAcc); break; case ItemID.MoonShell: guardian.AddFlag(GuardianFlags.WerewolfAcc); guardian.AddFlag(GuardianFlags.MerfolkAcc); break; case ItemID.SunStone: guardian.AddFlag(GuardianFlags.SunBuff); break; case ItemID.MoonStone: guardian.AddFlag(GuardianFlags.MoonBuff); break; case ItemID.CelestialStone: guardian.AddFlag(GuardianFlags.SunBuff); guardian.AddFlag(GuardianFlags.MoonBuff); break; case ItemID.CelestialShell: guardian.AddFlag(GuardianFlags.SunBuff); guardian.AddFlag(GuardianFlags.MoonBuff); guardian.AddFlag(GuardianFlags.WerewolfAcc); guardian.AddFlag(GuardianFlags.MerfolkAcc); break; case ItemID.RifleScope: guardian.AddFlag(GuardianFlags.Scope); break; case ItemID.SniperScope: guardian.AddFlag(GuardianFlags.Scope); guardian.RangedDamageMultiplier += 0.1f; guardian.RangedCriticalRate += 10; break; case ItemID.DestroyerEmblem: guardian.MeleeDamageMultiplier += 0.1f; guardian.RangedDamageMultiplier += 0.1f; guardian.MagicDamageMultiplier += 0.1f; guardian.SummonDamageMultiplier += 0.1f; guardian.MeleeCriticalRate += 8; guardian.RangedCriticalRate += 8; guardian.MagicCriticalRate += 8; break; case ItemID.FeralClaws: guardian.MeleeSpeed += 0.12f; break; case ItemID.ObsidianRose: guardian.AddFlag(GuardianFlags.LavaDamageReduction); break; case ItemID.MagicQuiver: guardian.RangedDamageMultiplier += 0.1f; guardian.AddFlag(GuardianFlags.ArrowBuff); break; case ItemID.MagmaStone: guardian.AddFlag(GuardianFlags.MagmaStone); break; case ItemID.FireGauntlet: guardian.MeleeDamageMultiplier += 0.1f; guardian.MeleeKnockback += 0.8f; guardian.MeleeSpeed += 0.1f; guardian.AddFlag(GuardianFlags.MagmaStone); break; case ItemID.MechanicalGlove: guardian.MeleeDamageMultiplier += 0.12f; guardian.MeleeKnockback += 0.7f; guardian.MeleeSpeed += 0.12f; break; case ItemID.PowerGlove: guardian.MeleeKnockback += 0.7f; guardian.MeleeSpeed += 0.12f; break; case ItemID.TitanGlove: guardian.MeleeKnockback += 0.7f; break; case ItemID.FleshKnuckles: guardian.AddFlag(GuardianFlags.Tanking); //guardian.Defense += 7; break; case ItemID.FrozenTurtleShell: guardian.AddFlag(GuardianFlags.FrozenTurtleShell); break; case ItemID.PaladinsShield: //guardian.Defense += 6; guardian.CoverRate += 25; guardian.AddFlag(GuardianFlags.KnockbackImmunity); break; case ItemID.PutridScent: guardian.MeleeDamageMultiplier += 0.05f; guardian.RangedDamageMultiplier += 0.05f; guardian.MagicDamageMultiplier += 0.05f; guardian.SummonDamageMultiplier += 0.05f; guardian.MeleeCriticalRate += 5; guardian.RangedCriticalRate += 5; guardian.MagicCriticalRate += 5; break; case ItemID.SharkToothNecklace: guardian.MeleeDamageMultiplier += 0.05f; guardian.RangedDamageMultiplier += 0.05f; guardian.MagicDamageMultiplier += 0.05f; guardian.SummonDamageMultiplier += 0.05f; break; case ItemID.HerculesBeetle: guardian.SummonDamageMultiplier += 0.15f; break; case ItemID.NecromanticScroll: guardian.SummonDamageMultiplier += 0.10f; guardian.MaxMinions++; break; case ItemID.PapyrusScarab: guardian.SummonDamageMultiplier += 0.25f; guardian.MaxMinions++; break; case ItemID.PygmyNecklace: guardian.MaxMinions++; break; case ItemID.PhilosophersStone: guardian.AddFlag(GuardianFlags.ReduceHealingPotionCooldown); break; case ItemID.BandofRegeneration: guardian.AddFlag(GuardianFlags.ImprovedHealthRegeneration); break; case ItemID.CharmofMyths: guardian.AddFlag(GuardianFlags.ReduceHealingPotionCooldown); guardian.AddFlag(GuardianFlags.ImprovedImmuneTime); guardian.AddFlag(GuardianFlags.ImprovedHealthRegeneration); //Health regen bonus break; case ItemID.WormScarf: guardian.DefenseRate += 17; break; case ItemID.HiveBackpack: guardian.AddFlag(GuardianFlags.BeeBuff); break; case ItemID.PanicNecklace: guardian.AddFlag(GuardianFlags.PanicNecklace); break; case ItemID.SweetheartNecklace: guardian.AddFlag(GuardianFlags.PanicNecklace); guardian.AddFlag(GuardianFlags.BeeCounter); break; case ItemID.AdhesiveBandage: guardian.AddBuffImmunity(BuffID.Bleeding); break; case ItemID.AnkhCharm: guardian.AddBuffImmunity(BuffID.Bleeding); guardian.AddBuffImmunity(BuffID.BrokenArmor); guardian.AddBuffImmunity(BuffID.Confused); guardian.AddBuffImmunity(BuffID.Cursed); guardian.AddBuffImmunity(BuffID.Darkness); guardian.AddBuffImmunity(BuffID.Poisoned); guardian.AddBuffImmunity(BuffID.Silenced); guardian.AddBuffImmunity(BuffID.Slow); guardian.AddBuffImmunity(BuffID.Weak); break; case ItemID.ArmorPolish: guardian.AddBuffImmunity(BuffID.BrokenArmor); break; case ItemID.Vitamins: guardian.AddBuffImmunity(BuffID.Weak); break; case ItemID.ArmorBracing: guardian.AddBuffImmunity(BuffID.Weak); guardian.AddBuffImmunity(BuffID.BrokenArmor); break; case ItemID.Bezoar: guardian.AddBuffImmunity(BuffID.Poisoned); break; case ItemID.MedicatedBandage: guardian.AddBuffImmunity(BuffID.Bleeding); guardian.AddBuffImmunity(BuffID.Poisoned); break; case ItemID.Blindfold: guardian.AddBuffImmunity(BuffID.Darkness); break; case ItemID.CountercurseMantra: guardian.AddBuffImmunity(BuffID.Silenced); guardian.AddBuffImmunity(BuffID.Cursed); break; case ItemID.Megaphone: guardian.AddBuffImmunity(BuffID.Silenced); break; case ItemID.Nazar: guardian.AddBuffImmunity(BuffID.Cursed); break; case ItemID.FastClock: guardian.AddBuffImmunity(BuffID.Slow); break; case ItemID.TrifoldMap: guardian.AddBuffImmunity(BuffID.Confused); break; case ItemID.ThePlan: guardian.AddBuffImmunity(BuffID.Slow); guardian.AddBuffImmunity(BuffID.Confused); break; case ItemID.HandWarmer: guardian.AddBuffImmunity(BuffID.Chilled); guardian.AddBuffImmunity(BuffID.Frozen); break; //Wings case 492: case 493: case 2494: guardian.WingMaxFlightTime = 100; break; case 748: guardian.WingMaxFlightTime = 115; break; case 749: case 761: case 1515: guardian.WingMaxFlightTime = 130; break; case 785: case 786: case 1165: guardian.WingMaxFlightTime = 140; break; case 665: case 1583: case 1584: case 1585: case 1586: case 3228: case 3580: case 3582: case 3588: case 3592: case 3883: guardian.WingMaxFlightTime = 150; break; case 821: case 822: case 823: case 1162: case 2280: case 2770: case 3469: case 3470: guardian.WingMaxFlightTime = 160; break; case 1866: case 1871: guardian.WingMaxFlightTime = 170; break; case 2609: guardian.WingMaxFlightTime = 180; //Ignore water effect? break; case 948: case 1797: case 1830: case 3468: case 3471: guardian.WingMaxFlightTime = 180; break; } }
public override void ItemStatusScript(TerraGuardian g) { g.AddFlag(GuardianFlags.GoldenShowerStance); }
public override void Attributes(TerraGuardian g) { g.AddFlag(GuardianFlags.CanDualWield); }
public override void ItemStatusScript(TerraGuardian g) { g.AddFlag(GuardianFlags.Tanking); }
public override void ItemStatusScript(TerraGuardian g) { g.AddFlag(GuardianFlags.CanDualWield); }
public override void Update(TerraGuardian guardian) { if (TargetPlayer != null) { if (TargetPlayer.dead || !TargetPlayer.active) { InUse = false; return; } } if (TargetGuardian != null) { if (!TargetGuardian.Active || TargetGuardian.Downed) { InUse = false; return; } } switch (Step) { case 0: { if (StepStart) { LastPlayerFollower = guardian.OwnerPos > -1; } Rectangle TargetHitbox; Vector2 TargetPosition; if (guardian.UsingFurniture) { guardian.LeaveFurniture(); } if (TargetPlayer != null) { TargetPosition = TargetPlayer.Center; TargetHitbox = TargetPlayer.getRect(); } else { TargetPosition = TargetGuardian.CenterPosition; TargetHitbox = TargetGuardian.HitBox; } if (TargetHitbox.Intersects(guardian.HitBox) || Time >= 10 * 60) { ChangeStep(); guardian.AddFlag(GuardianFlags.IgnoreGfx); } else if (guardian.Position.X > TargetPosition.X) { guardian.MoveLeft = true; guardian.MoveRight = false; } else { guardian.MoveRight = true; guardian.MoveLeft = false; } } break; case 1: { if (guardian.OwnerPos > -1 != LastPlayerFollower) { InUse = false; return; } guardian.IsBeingPulledByPlayer = false; if (!ByPlayerOrder && Time >= DurationTime) { if (TargetPlayer != null) { guardian.Position = TargetPlayer.Bottom; } else { guardian.Position = TargetGuardian.Position; } InUse = false; return; } guardian.MoveLeft = guardian.MoveRight = guardian.Jump = false; guardian.ChangeIdleAction(TerraGuardian.IdleActions.Wait, 300); Vector2 MountedPosition = guardian.Base.GetBetweenHandsPositionVector(Reviving ? guardian.Base.ReviveFrame : guardian.Base.PlayerMountedArmAnimation); MountedPosition.X = MountedPosition.X - guardian.Base.SpriteWidth * 0.5f; Vector2 HauntPosition = Vector2.Zero; if (TargetPlayer != null) { if (Reviving) { if (guardian.ItemAnimationTime == 0) { guardian.Direction = -TargetPlayer.direction; } HauntPosition = TargetPlayer.Center; } else { if (guardian.ItemAnimationTime == 0) { guardian.Direction = TargetPlayer.direction; } HauntPosition = TargetPlayer.position; } if (guardian.Direction > 0) { MountedPosition.X *= -1; } HauntPosition.X += TargetPlayer.width * 0.5f; HauntPosition.Y += TargetPlayer.height + (guardian.Base.SpriteHeight - MountedPosition.Y - 30) * guardian.Scale; HauntPosition.X += (MountedPosition.X - 6 * guardian.Direction) * guardian.Scale; guardian.AddDrawMomentToPlayer(TargetPlayer); TargetPlayer.AddBuff(Terraria.ModLoader.ModContent.BuffType <Buffs.GhostFoxHaunts.FriendlyHaunt>(), 5); Reviving = TargetPlayer.GetModPlayer <PlayerMod>().KnockedOut; } else { if (Reviving) { if (guardian.ItemAnimationTime == 0) { guardian.Direction = -TargetGuardian.Direction; } HauntPosition = TargetGuardian.CenterPosition; } else { if (guardian.ItemAnimationTime == 0) { guardian.Direction = TargetGuardian.Direction; } HauntPosition = TargetGuardian.Position; } if (guardian.Direction > 0) { MountedPosition.X *= -1; } HauntPosition.X += MountedPosition.X * guardian.Scale - TargetGuardian.Width * 0.2f * guardian.Direction; //HauntPosition.X += (MountedPosition.X - (TargetGuardian.Width * 0.5f - 8) * guardian.Direction) * guardian.Scale; //- 8 HauntPosition.Y += MountedPosition.Y * guardian.Scale - TargetGuardian.Height * 0.95f; guardian.AddDrawMomentToTerraGuardian(TargetGuardian); TargetGuardian.AddBuff(Terraria.ModLoader.ModContent.BuffType <Buffs.GhostFoxHaunts.FriendlyHaunt>(), 5, true); Reviving = TargetGuardian.KnockedOut || TargetGuardian.IsUsingBed; } guardian.Velocity = Vector2.Zero; guardian.Position = HauntPosition; } break; } LastPlayerFollower = guardian.OwnerPos > -1; }
public static void GetArmorSetEffect(TerraGuardian guardian) { int Head = guardian.Equipments[0].type, Armor = guardian.Equipments[1].type, Leggings = guardian.Equipments[2].type; if (Head == 88 && Armor == 410 && Leggings == 411) //Mining Set { //30% mining speed } if ((Head == 727 && Armor == 728 && Leggings == 729) || (Head == 733 && Armor == 734 && Leggings == 735) || (Head == 2509 && Armor == 2510 && Leggings == 2511) || (Head == 2512 && Armor == 2513 && Leggings == 2514) || (Head == 730 && Armor == 731 && Leggings == 732) || (Head == 924 && Armor == 925 && Leggings == 926) || (Head == 736 && Armor == 737 && Leggings == 738)) //Wood Sets { guardian.Defense++; } if (Head == 894 && Armor == 895 && Leggings == 896) //Cactus Set { guardian.Defense++; } if ((Head == 89 && Armor == 80 && Leggings == 76) || (Head == 687 && Armor == 688 && Leggings == 689)) //Tier 1 Set { guardian.Defense += 2; } if (Head == 1731 && Armor == 1732 && Leggings == 1733) //Pumpkin Set { guardian.MeleeDamageMultiplier += 0.1f; guardian.RangedDamageMultiplier += 0.1f; guardian.MagicDamageMultiplier += 0.1f; guardian.SummonDamageMultiplier += 0.1f; } if ((Head == 90 || Head == 954) && Armor == 81 && Leggings == 77) //Iron Set { guardian.Defense += 2; } if (Head == 690 && Armor == 691 && Leggings == 692) //Lead Set { guardian.Defense += 2; } if ((Head == 91 && Armor == 82 && Leggings == 78) || (Head == 693 && Armor == 694 && Leggings == 695)) // Tier 3 set { guardian.Defense += 3; } if (Head == 92 && Armor == 83 && Leggings == 79) //Gold Set { guardian.Defense += 3; } if (Head == 696 && Armor == 697 && Leggings == 698) //Platinum Set { guardian.Defense += 4; } if (Head == 256 && Armor == 257 && Leggings == 258) //Ninja Set { guardian.AddFlag(GuardianFlags.NinjaSetEffect); guardian.TrailLength = 5; guardian.TrailDelay = 2; } if (Head == 3374 && Armor == 3375 && Leggings == 3376) //Fossil Set { guardian.AddFlag(GuardianFlags.FossilSetEffect); } if (Head == 2361 && Armor == 2362 && Leggings == 2363) { guardian.SummonDamageMultiplier += 0.1f; } if (Head == 228 && Armor == 229 && Leggings == 230) { guardian.ManaCostMult -= 0.16f; guardian.AddFlag(GuardianFlags.JungleSetEffect); } if (Head == 690 && Armor == 691 && Leggings == 692) { guardian.ManaCostMult -= 0.16f; guardian.AddFlag(GuardianFlags.AncientCobaltSetEffect); } if (Head == 123 && Armor == 124 && Leggings == 125) { guardian.AddFlag(GuardianFlags.MeteorSetEffect); } if ((Head == 959 || Head == 151) && Armor == 152 && Leggings == 153) { guardian.AddFlag(GuardianFlags.NecroSetEffect); guardian.TrailLength = 3; guardian.TrailDelay = 3; } if ((Head == 102 || Head == 956) && (Armor == 101 || Armor == 957) && (Leggings == 100 || Leggings == 958)) { guardian.MoveSpeed += 0.15f; guardian.AddFlag(GuardianFlags.ShadowSetEffect); guardian.TrailLength = 5; guardian.TrailDelay = 3; } if (Head == 792 && Armor == 793 && Leggings == 794) { guardian.AddFlag(GuardianFlags.CrimsonSetEffect); } if (Head == 231 && Armor == 232 && Leggings == 233) { guardian.MeleeDamageMultiplier += 0.17f; guardian.AddFlag(GuardianFlags.MoltenSetEffect); } if (Head == 2370 && Armor == 2371 && Leggings == 2372) { guardian.SummonDamageMultiplier += 0.12f; } if (Armor == 374 && Leggings == 375) //Cobalt Set { bool IsSet = true; if (Head == 371) { guardian.ManaCostMult -= 0.14f; } else if (Head == 372) { guardian.MeleeSpeed += 0.15f; } else if (Head == 373) { guardian.AddFlag(GuardianFlags.CobaltSetAmmoCostReduction); } else { IsSet = false; } if (IsSet) { guardian.AddFlag(GuardianFlags.ColbaltSetEffect); } guardian.TrailLength = 5; guardian.TrailDelay = 2; } if ((Head == 1207 || Head == 1206 || Head == 1205) && Armor == 1208 && Leggings == 1209) //Palladium Set { guardian.AddFlag(GuardianFlags.PalladiumSetEffect); } if (Armor == 379 && Leggings == 380) //Mythril Set { if (Head == 376) { guardian.ManaCostMult -= 0.17f; } else if (Head == 377) { guardian.MeleeCriticalRate += 5; } else if (Head == 378) { guardian.AddFlag(GuardianFlags.MythrilSetAmmoCostReduction); } } if ((Head == 1212 || Head == 1211 || Head == 1210) && Armor == 1213 && Leggings == 1214) //Orichalcum Set { guardian.AddFlag(GuardianFlags.OrichalcumSetEffect); } if (Armor == 403 && Leggings == 404) //Adamantite Set { bool IsSet = true; if (Head == 400) { guardian.ManaCostMult -= 0.19f; } else if (Head == 401) { guardian.MeleeSpeed += 0.18f; guardian.MoveSpeed += 0.18f; } else if (Head == 402) { guardian.AddFlag(GuardianFlags.AdamantiteSetAmmoCostReduction); } else { IsSet = false; } if (IsSet) { guardian.AddFlag(GuardianFlags.AdamantiteSetEffect); guardian.PulsePower = 5; } } if ((Head == 1217 || Head == 1216 || Head == 1215) && Armor == 1218 && Leggings == 1219) { guardian.AddFlag(GuardianFlags.TitaniumSetEffect); } if (Head == 684 && Armor == 685 && Leggings == 686) //Frost Set { guardian.AddFlag(GuardianFlags.FrostSetEffect); } if (Head == 3776 && Armor == 3777 && Leggings == 3778) //Forbidden Set { guardian.AddFlag(GuardianFlags.ForbiddenSetEffect); } if (UsingRobe(Armor)) { if (Head == 2275) { guardian.MMP += 60; } else if (Head == 238) { guardian.MagicCriticalRate += 10; } } //Implement apprentice set and ahead. if (Head == 3797 && Armor == 3798 && Leggings == 3799) //Apprentice Set { guardian.AddFlag(GuardianFlags.DD2ApprenticeSet); guardian.MaxSentries++; } if (Head == 3800 && Armor == 3801 && Leggings == 3802) //Squire Set { guardian.AddFlag(GuardianFlags.DD2SquireSet); guardian.MaxSentries++; } if (Head == 3803 && Armor == 3804 && Leggings == 3805) //Huntress Set { guardian.AddFlag(GuardianFlags.DD2HuntressSet); guardian.MaxSentries++; } if (Head == 3806 && Armor == 3807 && Leggings == 3808) //Monk Set { guardian.AddFlag(GuardianFlags.DD2MonkSet); guardian.MaxSentries++; } if (Armor == 551 && Leggings == 552) //Hallowed Set { bool IsSet = true; if (Head == 558) { guardian.ManaCostMult -= 0.2f; } else if (Head == 559) { guardian.MeleeSpeed += 0.19f; guardian.MoveSpeed += 0.19f; } else if (Head == 553) { guardian.AddFlag(GuardianFlags.HallowedAmmoReduction); } else { IsSet = false; } if (IsSet) { guardian.AddFlag(GuardianFlags.HallowedSetEffect); guardian.PulsePower = 5; } } if ((Head >= 1001 && Head <= 1003) && Armor == 1004 && Leggings == 1005) //Chlorophyte Set { guardian.AddFlag(GuardianFlags.ChlorophyteSetEffect); } if (Head == 1316 && Armor == 1317 && Leggings == 1318) //Turtle Set { guardian.AddFlag(GuardianFlags.TurtleSetEffect); } if (Head == 1159 && Armor == 1160 && Leggings == 1161) //Tiki set { guardian.MaxMinions++; } if (Head == 1832 && Armor == 1833 && Leggings == 1834) //Spooky Set { guardian.SummonDamageMultiplier += 0.25f; } if ((Head == 1546 || Head == 1548 || Head == 1547) && Armor == 1549 && Leggings == 1550) //Shroomite Set { guardian.AddFlag(GuardianFlags.ShroomiteSetEffect); } if (Armor == 1504 && Leggings == 1505) //Spectre Set { if (Head == 2189) { guardian.AddFlag(GuardianFlags.SpectreSplashSetEffect); } if (Head == 1503) { guardian.AddFlag(GuardianFlags.SpectreHealSetEffect); } } if (Head == 2199 && Leggings == 2202) //Beetle Set { if (Armor == 2200) { guardian.AddFlag(GuardianFlags.BeetleOffenseEffect); } else if (Armor == 2201) { guardian.AddFlag(GuardianFlags.BeetleDefenseEffect); } } if (Head == 3874 && Armor == 3875 && Leggings == 3876) //Dark Artist Set { guardian.AddFlag(GuardianFlags.DD2DarkArtistEffect); guardian.MaxSentries++; } if (Head == 3880 && Armor == 3881 && Leggings == 3882) //Shinobi Infiltrator Set { guardian.AddFlag(GuardianFlags.DD2ShinobiInfiltratorEffect); guardian.MaxSentries++; } if (Head == 3877 && Armor == 3878 && Leggings == 3879) //Red Riding Set { guardian.AddFlag(GuardianFlags.DD2RedRidingEffect); guardian.MaxSentries++; } if (Head == 3871 && Armor == 3872 && Leggings == 3873) //Valhalla Knight Set { guardian.AddFlag(GuardianFlags.DD2ValhallaKnightEffect); guardian.MaxSentries++; } if (Head == 2763 && Armor == 2764 && Leggings == 2765) //Solar Flare Set { guardian.AddFlag(GuardianFlags.SolarFlareSetEffect); guardian.PulsePower = 5; } if (Head == 2757 && Armor == 2758 && Leggings == 2759) //Vortex Set { guardian.AddFlag(GuardianFlags.VortexSetEffect); } if (Head == 2760 && Armor == 2761 && Leggings == 2762) //Nebula Set { guardian.AddFlag(GuardianFlags.NebulaSetEffect); } if (Head == 3381 && Armor == 3382 && Leggings == 3383) //Stardust Set { guardian.AddFlag(GuardianFlags.StardustSetEffect); } }
public static void GetArmorPieceEffect(TerraGuardian guardian, Item equip) { switch (equip.type) { case ItemID.MiningHelmet: guardian.AddFlag(GuardianFlags.MiningHelmet); break; case ItemID.NinjaHood: guardian.ShotSpeedMult += 0.15f; break; case ItemID.NinjaShirt: guardian.RangedDamageMultiplier += 0.15f; break; case ItemID.NinjaPants: guardian.RangedCriticalRate += 10; break; case ItemID.FossilHelm: guardian.ShotSpeedMult += 0.2f; break; case ItemID.FossilShirt: guardian.RangedDamageMultiplier += 0.2f; break; case ItemID.FossilPants: guardian.RangedCriticalRate += 15; break; case ItemID.BeeHeadgear: guardian.SummonDamageMultiplier += 0.04f; guardian.MaxMinions++; break; case ItemID.BeeBreastplate: guardian.SummonDamageMultiplier += 0.04f; guardian.MaxMinions++; break; case ItemID.BeeGreaves: guardian.SummonDamageMultiplier += 0.05f; break; case ItemID.JungleHat: case ItemID.AncientCobaltHelmet: guardian.MagicCriticalRate += 4; guardian.MMP += 40; break; case ItemID.JungleShirt: case ItemID.JunglePants: case ItemID.AncientCobaltBreastplate: case ItemID.AncientCobaltLeggings: guardian.MagicCriticalRate += 4; guardian.MMP += 20; break; case ItemID.MeteorHelmet: case ItemID.MeteorSuit: case ItemID.MeteorLeggings: guardian.MagicDamageMultiplier += 0.07f; break; case ItemID.AncientNecroHelmet: case ItemID.NecroHelmet: case ItemID.NecroBreastplate: case ItemID.NecroGreaves: guardian.RangedDamageMultiplier += 0.05f; break; case ItemID.AncientShadowHelmet: case ItemID.ShadowHelmet: case ItemID.AncientShadowScalemail: case ItemID.ShadowScalemail: case ItemID.AncientShadowGreaves: case ItemID.ShadowGreaves: guardian.MeleeSpeed += 0.07f; break; case ItemID.CrimsonHelmet: case ItemID.CrimsonScalemail: case ItemID.CrimsonGreaves: guardian.MeleeDamageMultiplier += 0.02f; break; case ItemID.SpiderMask: case ItemID.SpiderBreastplate: case ItemID.SpiderGreaves: guardian.SummonDamageMultiplier += 0.06f; guardian.MaxMinions++; break; case ItemID.CobaltHat: guardian.MMP += 40; guardian.MagicCriticalRate += 9; break; case ItemID.CobaltHelmet: guardian.MoveSpeed += 0.07f; guardian.MeleeSpeed += 0.12f; break; case ItemID.CobaltMask: guardian.RangedDamageMultiplier += 0.1f; guardian.RangedCriticalRate += 6; break; case ItemID.CobaltBreastplate: guardian.MeleeCriticalRate += 3; guardian.RangedCriticalRate += 3; guardian.MagicCriticalRate += 3; break; case ItemID.CobaltLeggings: guardian.MoveSpeed += 0.10f; break; case ItemID.PalladiumHeadgear: guardian.MagicDamageMultiplier += 0.07f; guardian.MMP += 60; break; case ItemID.PalladiumHelmet: guardian.RangedDamageMultiplier += 0.09f; guardian.RangedCriticalRate += 9; break; case ItemID.PalladiumMask: guardian.MeleeDamageMultiplier += 0.08f; guardian.MeleeSpeed += 0.12f; break; case ItemID.PalladiumBreastplate: guardian.MeleeDamageMultiplier += 0.03f; guardian.RangedDamageMultiplier += 0.03f; guardian.MagicDamageMultiplier += 0.03f; guardian.SummonDamageMultiplier += 0.03f; guardian.MeleeCriticalRate += 2; guardian.RangedCriticalRate += 2; guardian.MagicCriticalRate += 2; break; case ItemID.PalladiumLeggings: guardian.MeleeDamageMultiplier += 0.02f; guardian.RangedDamageMultiplier += 0.02f; guardian.MagicDamageMultiplier += 0.02f; guardian.SummonDamageMultiplier += 0.02f; guardian.MeleeCriticalRate += 1; guardian.RangedCriticalRate += 1; guardian.MagicCriticalRate += 1; break; case ItemID.MythrilHood: guardian.MMP += 60; guardian.MagicDamageMultiplier += 0.15f; break; case ItemID.MythrilHelmet: guardian.MeleeCriticalRate += 5; guardian.MeleeDamageMultiplier += 0.1f; break; case ItemID.MythrilHat: guardian.RangedDamageMultiplier += 0.12f;; guardian.RangedCriticalRate += 7; break; case ItemID.MythrilChainmail: guardian.MeleeDamageMultiplier += 0.05f; guardian.RangedDamageMultiplier += 0.05f; guardian.MagicDamageMultiplier += 0.05f; guardian.SummonDamageMultiplier += 0.05f; break; case ItemID.MythrilGreaves: guardian.MeleeCriticalRate += 3; guardian.RangedCriticalRate += 3; guardian.MagicCriticalRate += 3; break; case ItemID.OrichalcumHeadgear: guardian.MagicCriticalRate += 18; guardian.MMP += 80; break; case ItemID.OrichalcumHelmet: guardian.RangedCriticalRate += 15; guardian.RangedSpeed += 0.08f; break; case ItemID.OrichalcumMask: guardian.MeleeDamageMultiplier += 0.07f; guardian.MeleeCriticalRate += 7; break; case ItemID.OrichalcumBreastplate: guardian.MeleeDamageMultiplier += 0.06f; guardian.RangedDamageMultiplier += 0.06f; guardian.MagicDamageMultiplier += 0.06f; guardian.SummonDamageMultiplier += 0.06f; break; case ItemID.OrichalcumLeggings: guardian.MoveSpeed += 0.11f; break; case ItemID.AdamantiteHeadgear: guardian.MMP += 80; guardian.MagicDamageMultiplier += 0.11f; guardian.MagicCriticalRate += 11; break; case ItemID.AdamantiteHelmet: guardian.MeleeCriticalRate += 7; guardian.MeleeDamageMultiplier += 0.14f; break; case ItemID.AdamantiteMask: guardian.RangedDamageMultiplier += 0.14f; guardian.RangedCriticalRate += 8; break; case ItemID.AdamantiteBreastplate: guardian.MeleeDamageMultiplier += 0.06f; guardian.RangedDamageMultiplier += 0.06f; guardian.MagicDamageMultiplier += 0.06f; guardian.SummonDamageMultiplier += 0.06f; break; case ItemID.AdamantiteLeggings: guardian.MeleeCriticalRate += 4; guardian.RangedCriticalRate += 4; guardian.MagicCriticalRate += 4; guardian.MoveSpeed += 0.05f; break; case ItemID.TitaniumHeadgear: guardian.MagicDamageMultiplier += 0.16f; guardian.MagicCriticalRate += 7; guardian.MMP += 100; break; case ItemID.TitaniumHelmet: guardian.RangedDamageMultiplier += 0.16f; guardian.RangedCriticalRate += 7; break; case ItemID.TitaniumMask: guardian.MeleeDamageMultiplier += 0.08f; guardian.MeleeSpeed += 0.08f; break; case ItemID.TitaniumBreastplate: guardian.MeleeDamageMultiplier += 0.04f; guardian.RangedDamageMultiplier += 0.04f; guardian.MagicDamageMultiplier += 0.04f; guardian.SummonDamageMultiplier += 0.04f; guardian.MeleeCriticalRate += 3; guardian.RangedCriticalRate += 3; guardian.MagicCriticalRate += 3; break; case ItemID.TitaniumLeggings: guardian.MeleeDamageMultiplier += 0.03f; guardian.RangedDamageMultiplier += 0.03f; guardian.MagicDamageMultiplier += 0.03f; guardian.SummonDamageMultiplier += 0.03f; guardian.MeleeCriticalRate += 3; guardian.RangedCriticalRate += 3; guardian.MagicCriticalRate += 3; guardian.MoveSpeed += 0.06f; break; case ItemID.FrostHelmet: guardian.MeleeDamageMultiplier += 0.16f; guardian.RangedDamageMultiplier += 0.16f; break; case ItemID.FrostBreastplate: guardian.MeleeCriticalRate += 11; guardian.RangedCriticalRate += 11; break; case ItemID.FrostLeggings: guardian.MoveSpeed += 0.08f; guardian.MeleeSpeed += 0.07f; break; case 3776: //Forbidden Mask guardian.MagicDamageMultiplier += 0.15f; guardian.SummonDamageMultiplier += 0.15f; break; case 3777: //Forbidden Robes guardian.MMP += 80; break; case 3778: //Forbidden Treads guardian.MaxMinions += 2; break; case ItemID.MagicHat: guardian.MagicDamageMultiplier += 0.07f; guardian.MagicCriticalRate += 7; break; case ItemID.WizardHat: guardian.MagicDamageMultiplier += 0.15f; break; case ItemID.AmethystRobe: guardian.MMP += 20; guardian.ManaCostMult -= 0.05f; break; case ItemID.TopazRobe: guardian.MMP += 40; guardian.ManaCostMult -= 0.07f; break; case ItemID.SapphireRobe: guardian.MMP += 40; guardian.ManaCostMult -= 0.09f; break; case ItemID.EmeraldRobe: guardian.MMP += 60; guardian.ManaCostMult -= 0.11f; break; case ItemID.RubyRobe: guardian.MMP += 60; guardian.ManaCostMult -= 0.13f; break; case ItemID.DiamondRobe: guardian.MMP += 80; guardian.ManaCostMult -= 0.15f; break; case ItemID.GypsyRobe: guardian.MagicDamageMultiplier += 0.06f; guardian.MagicCriticalRate += 6; guardian.ManaCostMult -= 0.1f; break; case ItemID.DivingHelmet: guardian.AddFlag(GuardianFlags.ExtendedBreath); break; case ItemID.Gi: guardian.MeleeDamageMultiplier += 0.15f; guardian.RangedDamageMultiplier += 0.05f; guardian.MagicDamageMultiplier += 0.05f; guardian.SummonDamageMultiplier += 0.05f; guardian.MeleeSpeed += 0.1f; guardian.MoveSpeed += 0.1f; break; case ItemID.NightVisionHelmet: guardian.AddFlag(GuardianFlags.NightVisionPotion); break; case ItemID.ApprenticeHat: guardian.MaxSentries++; guardian.ManaCostMult -= 0.1f; break; case ItemID.ApprenticeRobe: guardian.SummonDamageMultiplier += 0.2f; guardian.MagicDamageMultiplier += 0.1f; break; case ItemID.ApprenticeTrousers: guardian.SummonDamageMultiplier += 0.1f; guardian.MoveSpeed += 0.2f; break; case ItemID.SquireGreatHelm: guardian.MaxSentries++; guardian.AddFlag(GuardianFlags.SquireHelmetHealthRegen); break; case ItemID.SquirePlating: guardian.SummonDamageMultiplier += 0.15f; guardian.MeleeDamageMultiplier += 0.15f; break; case ItemID.SquireGreaves: guardian.SummonDamageMultiplier += 0.15f; guardian.MeleeCriticalRate += 20; guardian.MoveSpeed += 0.2f; break; case ItemID.HuntressWig: guardian.MaxSentries++; guardian.RangedCriticalRate += 10; break; case ItemID.HuntressJerkin: guardian.SummonDamageMultiplier += 0.2f; guardian.RangedDamageMultiplier += 0.2f; break; case ItemID.HuntressPants: guardian.SummonDamageMultiplier += 0.1f; guardian.MoveSpeed += 0.2f; break; case ItemID.MonkBrows: guardian.MaxSentries++; guardian.MeleeSpeed += 0.2f; break; case ItemID.MonkShirt: guardian.SummonDamageMultiplier += 0.2f; guardian.MeleeDamageMultiplier += 0.2f; break; case ItemID.MonkPants: guardian.SummonDamageMultiplier += 0.1f; guardian.MeleeCriticalRate += 10; guardian.MoveSpeed += 0.2f; break; case ItemID.HallowedHeadgear: guardian.MMP += 100; guardian.MagicDamageMultiplier += 0.12f; guardian.MagicCriticalRate += 12; break; case ItemID.HallowedMask: guardian.MeleeDamageMultiplier += 0.1f; guardian.MeleeSpeed += 0.1f; break; case ItemID.HallowedHelmet: guardian.RangedDamageMultiplier += 0.15f; guardian.RangedCriticalRate += 8; break; case ItemID.HallowedPlateMail: guardian.MeleeCriticalRate += 7; guardian.RangedCriticalRate += 7; guardian.MagicCriticalRate += 7; break; case ItemID.HallowedGreaves: guardian.MeleeDamageMultiplier += 0.07f; guardian.RangedDamageMultiplier += 0.07f; guardian.MagicDamageMultiplier += 0.07f; guardian.SummonDamageMultiplier += 0.07f; guardian.MoveSpeed += 0.08f; break; case ItemID.ChlorophyteMask: guardian.MeleeDamageMultiplier += 0.16f; guardian.MeleeCriticalRate += 6; break; case ItemID.ChlorophyteHelmet: guardian.RangedDamageMultiplier += 0.16f; guardian.AddFlag(GuardianFlags.ChlorophyteAmmoCostReduction); break; case ItemID.ChlorophyteHeadgear: guardian.MMP += 80; guardian.ManaCostMult -= 0.17f; guardian.MagicDamageMultiplier += 0.16f; break; case ItemID.ChlorophytePlateMail: guardian.MeleeDamageMultiplier += 0.05f; guardian.RangedDamageMultiplier += 0.05f; guardian.MagicDamageMultiplier += 0.05f; guardian.SummonDamageMultiplier += 0.05f; guardian.MeleeCriticalRate += 7; guardian.RangedCriticalRate += 7; guardian.MagicCriticalRate += 7; break; case ItemID.ChlorophyteGreaves: guardian.MeleeCriticalRate += 8; guardian.RangedCriticalRate += 8; guardian.MagicCriticalRate += 8; guardian.MoveSpeed += 0.05f; break; case ItemID.TurtleHelmet: guardian.MeleeDamageMultiplier += 0.06f; guardian.Aggro += 250; break; case ItemID.TurtleScaleMail: guardian.MeleeDamageMultiplier += 0.08f; guardian.MeleeCriticalRate += 8; guardian.Aggro += 250; break; case ItemID.TurtleLeggings: guardian.MeleeCriticalRate += 4; guardian.Aggro += 250; break; case ItemID.TikiMask: case ItemID.TikiShirt: case ItemID.TikiPants: guardian.MaxMinions++; guardian.SummonDamageMultiplier += 0.1f; break; case ItemID.SpookyHelmet: case ItemID.SpookyBreastplate: case ItemID.SpookyLeggings: guardian.SummonDamageMultiplier += 0.11f; guardian.MaxMinions++; break; case ItemID.ShroomiteHeadgear: guardian.AddFlag(GuardianFlags.ShroomiteArrow); guardian.RangedCriticalRate += 5; break; case ItemID.ShroomiteHelmet: guardian.AddFlag(GuardianFlags.ShroomiteRocket); guardian.RangedCriticalRate += 5; break; case ItemID.ShroomiteMask: guardian.AddFlag(GuardianFlags.ShroomiteBullet); guardian.RangedCriticalRate += 5; break; case ItemID.ShroomiteBreastplate: guardian.RangedDamageMultiplier += 0.13f; guardian.AddFlag(GuardianFlags.ShroomiteAmmoReduction); break; case ItemID.ShroomiteLeggings: guardian.RangedCriticalRate += 7; guardian.MoveSpeed += 0.12f; break; case ItemID.SpectreMask: guardian.MMP += 60; guardian.ManaCostMult -= 0.13f; guardian.MagicDamageMultiplier += 0.05f; guardian.MagicCriticalRate += 5; break; case ItemID.SpectreHood: guardian.MagicDamageMultiplier -= 0.4f; guardian.MMP += 80; guardian.ManaCostMult -= 0.17f; break; case ItemID.SpectreRobe: guardian.MagicDamageMultiplier += 0.07f; guardian.MagicCriticalRate += 7; break; case ItemID.SpectrePants: guardian.MagicDamageMultiplier += 0.08f; guardian.MoveSpeed += 0.08f; break; case ItemID.BeetleHelmet: guardian.MeleeDamageMultiplier += 0.06f; guardian.Aggro += 250; break; case ItemID.BeetleScaleMail: guardian.MeleeDamageMultiplier += 0.08f; guardian.MeleeCriticalRate += 8; guardian.MoveSpeed += 0.06f; guardian.MeleeSpeed += 0.06f; break; case ItemID.BeetleShell: guardian.MeleeDamageMultiplier += 0.05f; guardian.MeleeCriticalRate += 5; guardian.Aggro += 500; break; case ItemID.BeetleLeggings: guardian.MoveSpeed += 0.06f; guardian.MeleeSpeed += 0.06f; guardian.Aggro += 250; break; case 3874: //Dark Artist Hat guardian.MaxSentries++; guardian.MagicDamageMultiplier += 0.1f; guardian.SummonDamageMultiplier += 0.1f; break; case 3875: //Dark Artist Robe guardian.SummonDamageMultiplier += 0.3f; guardian.MagicDamageMultiplier += 0.15f; break; case 3876: //Dark Artist Leggings guardian.SummonDamageMultiplier += 0.2f; guardian.MagicCriticalRate += 25; break; case 3880: //Shinobi Infiltrator Helmet guardian.MaxSentries++; guardian.MeleeDamageMultiplier += 0.2f; guardian.SummonDamageMultiplier += 0.2f; break; case 3881: //Shinobi Infiltrator Torso guardian.MeleeSpeed += 0.2f; guardian.SummonDamageMultiplier += 0.2f; break; case 3882: //Shinobi Infiltrator Pants guardian.SummonDamageMultiplier += 0.2f; guardian.MoveSpeed += 0.2f; guardian.MeleeCriticalRate += 20; break; case 3877: //Red Riding Hood guardian.MaxSentries++; guardian.SummonDamageMultiplier += 0.1f; guardian.RangedCriticalRate += 10; break; case 3878: //Red Riding Dress guardian.SummonDamageMultiplier += 0.25f; guardian.RangedDamageMultiplier += 0.25f; break; case 3879: //Red Riding Legs guardian.SummonDamageMultiplier += 0.25f; guardian.MoveSpeed += 0.2f; break; case 3871: //Valhalla Knight Helm guardian.MaxSentries++; guardian.SummonDamageMultiplier += 0.1f; break; case 3872: //Valhalla Knight Breastplate guardian.SummonDamageMultiplier += 0.3f; guardian.AddFlag(GuardianFlags.DD2ValhallaKnightBreastplateLifeRegen); //No idea of where is the life regen code break; case 3873: //Valhalla Knight Greaves guardian.SummonDamageMultiplier += 0.2f; guardian.MeleeCriticalRate += 20; guardian.RangedCriticalRate += 20; guardian.MagicCriticalRate += 20; guardian.MoveSpeed += 0.3f; break; case ItemID.SolarFlareHelmet: guardian.MeleeCriticalRate += 17; guardian.Aggro += 300; break; case ItemID.SolarFlareBreastplate: guardian.MeleeDamageMultiplier += 0.22f; guardian.Aggro += 300; break; case ItemID.SolarFlareLeggings: guardian.MoveSpeed += 0.15f; guardian.MeleeSpeed += 0.15f; guardian.Aggro += 300; break; case ItemID.VortexHelmet: guardian.RangedDamageMultiplier += 0.16f; guardian.RangedCriticalRate += 7; break; case ItemID.VortexBreastplate: guardian.RangedDamageMultiplier += 0.12f; guardian.RangedCriticalRate += 12; guardian.AddFlag(GuardianFlags.VortexAmmoUseReduction); break; case ItemID.VortexLeggings: guardian.RangedDamageMultiplier += 0.08f; guardian.RangedCriticalRate += 8; guardian.MoveSpeed += 0.1f; break; case ItemID.NebulaHelmet: guardian.MMP += 60; guardian.ManaCostMult -= 0.15f; guardian.MagicDamageMultiplier += 0.07f; guardian.MagicCriticalRate += 7; break; case ItemID.NebulaBreastplate: guardian.MagicDamageMultiplier += 0.09f; guardian.MagicCriticalRate += 9; break; case ItemID.NebulaLeggings: guardian.MagicDamageMultiplier += 0.1f; guardian.MoveSpeed += 0.1f; break; case ItemID.StardustHelmet: guardian.MaxMinions++; guardian.SummonDamageMultiplier += 0.22f; break; case ItemID.StardustBreastplate: guardian.MaxMinions += 2; guardian.SummonDamageMultiplier += 0.22f; break; case ItemID.StardustLeggings: guardian.MaxMinions += 2; guardian.SummonDamageMultiplier += 0.22f; break; } }