public override void ModifyTooltips(List <TooltipLine> tooltips) { SGAPlayer sgaply = Main.LocalPlayer.SGAPly(); if (sgaply.tf2emblemLevel > 0) { tooltips.Add(new TooltipLine(mod, "SoldierLine", "Tier 1: Damage Increased by 20%, Reload and firing speed are faster per level")); } if (sgaply.tf2emblemLevel > 1) { tooltips.Add(new TooltipLine(mod, "SoldierLine", "Tier 2: Damage Increased by 50%; rockets explode larger and move faster per level")); } if (sgaply.tf2emblemLevel > 2) { tooltips.Add(new TooltipLine(mod, "SoldierLine", "Tier 3: Damage Increased by 100%; Rockets slow targets, gain a firing speed boost when you rocket jump")); } if (sgaply.tf2emblemLevel > 3) { tooltips.Add(new TooltipLine(mod, "SoldierLine", "Tier 4: Damage Increased by 300%; Rocket jumping restores WingTime, slow is stronger, direct hits against slowed enemies will always crit")); } Color c = Main.hslToRgb((float)(Main.GlobalTime / 4) % 1f, 0.4f, 0.6f); tooltips.Add(new TooltipLine(mod, "RIP Rick May", Idglib.ColorText(c, "'He didn't fly into heaven, he rocket jumped into heaven'"))); c = Main.hslToRgb((float)((Main.GlobalTime + 5.77163f) / 4) % 1f, 0.35f, 0.65f); tooltips.Add(new TooltipLine(mod, "RIP Rick May", Idglib.ColorText(c, "RIP Rick May: 1940-2020"))); }
public override bool Shoot(Player player, ref Vector2 position, ref float speedX, ref float speedY, ref int type, ref int damage, ref float knockBack) { //base.Shoot(player,ref position,ref speedX,ref speedY,ref type,ref damage,ref knockBack); SGAPlayer sgaplayer = player.GetModPlayer(mod, typeof(SGAPlayer).Name) as SGAPlayer; sgaplayer.ammoLeftInClip -= 1; if (player.altFunctionUse == 2) { damage = (int)(damage * 0.5f); int target2 = Idglib.FindClosestTarget(0, position, new Vector2(0, 0)); NPC them = Main.npc[target2]; Vector2 where = them.Center - position; where.Normalize(); Vector2 perturbedSpeed = new Vector2(where.X, where.Y) * (new Vector2(speedX, speedY).Length() * 1.25f); Main.PlaySound(SoundID.Item38, player.Center); int thisoned = Projectile.NewProjectile(position.X, position.Y, perturbedSpeed.X, perturbedSpeed.Y, type, damage, knockBack, Main.myPlayer); } if (sgaplayer.ammoLeftInClip == 0 || forcedreload) { player.itemTime = 40; player.itemAnimation = 40; int thisone = Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, 0f, mod.ProjectileType("TheRevolverReloading"), 0, knockBack, Main.myPlayer, 0.0f, 0f); return(!forcedreload); } return(sgaplayer.ammoLeftInClip > 0); }
public override void SetStaticDefaults() { DisplayName.SetDefault("Anticipation Amulet Tier 3"); Tooltip.SetDefault("When a boss fight starts, you are healed by 300 HP, but only every 2 minutes and while " + Idglib.ColorText(Color.Green, "Anticipation") + " is low" + "\nDuring a boss fight, you build up " + Idglib.ColorText(Color.Green, "Anticipation") + ", which causes your held weapon to do more damage, this caps at a near 100% increase\n" + "You lose half your " + Idglib.ColorText(Color.Green, "Anticipation") + " when hurt, and passively drains while no boss is alive\n" + Idglib.ColorText(Color.Red, "Damage you take is increased by 40%")); }
public override void AI() { for (int num315 = 0; num315 < 2; num315 = num315 + 1) { int num316 = Dust.NewDust(new Vector2(projectile.position.X, projectile.position.Y), projectile.width, projectile.height, mod.DustType("NovusSparkle"), 0f, 0f, 50, Main.hslToRgb(0.4f, 0f, 0.15f), 1.7f); Main.dust[num316].noGravity = true; Dust dust3 = Main.dust[num316]; dust3.velocity *= 0.3f; } projectile.ai[0] = projectile.ai[0] + 1; if (projectile.ai[0] < 2) { keepspeed = (projectile.velocity).Length(); } NPC target = Main.npc[Idglib.FindClosestTarget(0, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null) { if ((target.Center - projectile.Center).Length() < 500f) { if (projectile.ai[0] < (250f) && projectile.ai[0] > (beginhoming)) { projectile.velocity = projectile.velocity + (projectile.DirectionTo(target.Center) * ((float)keepspeed * homing)); projectile.velocity.Normalize(); projectile.velocity = projectile.velocity * (float)keepspeed; } } if (projectile.ai[0] > 250f) { projectile.Kill(); } } }
public void Phase1Hover(Player P, ref Vector2 PWhere, ref Vector2 DrakenWhere, ref Vector2 FlyTo, ref Vector2 FlySpeed, ref Vector2 FlyFriction) { //Hovering FlyFriction = new Vector2(0.95f, 0.95f); FlyTo = PWhere - new Vector2((float)Math.Sin(npc.ai[0] / 73f) * 400f, 250); Vector2 Turnto = PWhere - DrakenWhere; Turnto.X *= 3f; npc.rotation = npc.rotation.AngleLerp((Turnto).ToRotation(), 0.025f); npc.spriteDirection = (FlyTo.X - DrakenWhere.X) > 0 ? 1 : -1; FlySpeed = new Vector2(-8.20f, -8.20f) * Math.Min((FlyTo - DrakenWhere).Length() / 400f, 1f); Vector2 shootthere = PWhere - DrakenWhere; if (npc.ai[0] % 10 == 0 && npc.ai[0] % 100 > 60) { shootthere.Normalize(); int prog = Projectile.NewProjectile(npc.Center, shootthere * 30f, ProjectileID.CursedFlameHostile, 80, 1f); } if (npc.ai[0] % 5 == 0 && npc.ai[0] % 100 > 60 && npc.ai[1] == 0) { Idglib.Shattershots(npc.Center, PWhere, new Vector2(0, 0), ProjectileID.CursedFlameHostile, 80, 50, 100, 3, false, 0, false, 100); } }
//this and the next one were based off BlushieMagic's code, god bless! public static void GenVirulent() { if (Main.netMode == 1 || WorldGen.noTileActions || WorldGen.gen || !Main.hardMode || GennedVirulent) { return; } //WorldGen.TileRunner(x, y, (double)WorldGen.genRand.Next(3, 6), WorldGen.genRand.Next(2, 6), TileType<ExampleOre>(), false, 0f, 0f, false, true); for (double k = 0; k < (Main.maxTilesX - 200) * (Main.maxTilesY - 150 - (int)Main.rockLayer) / 25.0 / 1.0; k += 1.0) { int genx = WorldGen.genRand.Next(100, Main.maxTilesX - 100); int geny = WorldGen.genRand.Next((int)Main.rockLayer, (int)Main.maxTilesY - 150); Tile tile = Framing.GetTileSafely(genx, geny); int chance = 0; if (tile.active() && (tile.type == TileID.Mud)) { chance = 3; } if (Main.rand.Next(0, 100) < chance) { WorldGen.TileRunner(genx, geny, (double)WorldGen.genRand.Next(3, 8), WorldGen.genRand.Next(5, 16), TileType <VirulentOre>(), false, 0f, 0f, false, true); } } if (Main.netMode == NetmodeID.Server) { NetMessage.SendData(MessageID.WorldData); } GennedVirulent = true; Idglib.Chat("The raw power of the empowered Murk has seeped into the jungle underground!", 75, 225, 75); }
public override void ModifyTooltips(List <TooltipLine> tooltips) { if (SGAWorld.downedSPinky && SGAWorld.downedCratrosityPML && SGAWorld.downedWraiths > 3) { if (SGAWorld.downedHellion < 2) { if (SGAWorld.downedHellion == 0) { tooltips.Add(new TooltipLine(mod, "Nmxx", "'Well done " + SGAmod.userName + ". Yes, I know your real name behind that facade you call " + Main.LocalPlayer.name + ".'")); tooltips.Add(new TooltipLine(mod, "Nmxx", "'And thanks to your Dragon's signal, I have found my way to your world, this one tear which will let me invade your puny little " + Main.worldName + "'")); tooltips.Add(new TooltipLine(mod, "Nmxx", "'Spend what little time you have left meaningful, if you were expecting to save him, I doubt it'")); tooltips.Add(new TooltipLine(mod, "Nmxx", "'But let us not waste anymore time, come, face me'")); } else { tooltips.Add(new TooltipLine(mod, "Nmxx", "'Getting closer, I guess now I'll just have to use more power to stop you'")); tooltips.Add(new TooltipLine(mod, "Nmxx", "'But enough talk, lets finish this'")); } } else { tooltips.Add(new TooltipLine(mod, "Nmxx", "'Hmp, very Well done " + SGAmod.userName + ", you've bested me, this time")); tooltips.Add(new TooltipLine(mod, "Nmxx", "But next time you won't be so lucky...")); tooltips.Add(new TooltipLine(mod, "Nmxx", "My tears have stablized...")); tooltips.Add(new TooltipLine(mod, "Nmxx", "Enjoy your fancy reward, you've earned that much...")); tooltips[0].text += " (Stablized)"; } tooltips.Add(new TooltipLine(mod, "Nmxx", "Tears a hole in the bastion of reality to bring forth the Paradox General, Helen 'Hellion' Weygold")); tooltips.Add(new TooltipLine(mod, "Nmxx", "Non Consumable")); if (SGAWorld.downedHellion < 2) { TooltipLine tt = tooltips.FirstOrDefault(x => x.Name == "Material" && x.mod == "Terraria"); if (tt != null) { int index = tooltips.FindIndex(here => here == tt); tooltips.RemoveAt(index); } } else { tooltips.Add(new TooltipLine(mod, "Nmxx", "Useable in crafting")); } foreach (TooltipLine line in tooltips) { string text = line.text; string newline = ""; for (int i = 0; i < text.Length; i += 1) { newline += Idglib.ColorText(Main.hslToRgb((Main.rand.NextFloat(0, 1)) % 1f, 0.75f, Main.rand.NextFloat(0.25f, 0.5f)), text[i].ToString()); } line.text = newline; } } else { tooltips = new List <TooltipLine>(); } }
public override void NPCLoot() { if (Math.Abs(npc.ai[2]) > 200) { if (npc.ai[0] > 6) { npc.type = oldtype; NPC myguy = Main.npc[(int)npc.ai[1]]; myguy.active = false; Achivements.SGAAchivements.UnlockAchivement("Harbinger", Main.LocalPlayer); if (SGAWorld.downedHarbinger == false) { Idglib.Chat("Your end is nigh...", 15, 15, 150); Idglib.Chat("Robbed figures have been seen near the dungeon.", 20, 20, 125); SGAWorld.downedHarbinger = true; } } else { npc.boss = false; } } else { npc.boss = false; Idglib.Chat("You are not ready for this...", 15, 15, 150); for (int i = 180; i <= 361; i += 180) { int harbinger2 = NPC.NewNPC((int)npc.Center.X, (int)npc.Center.Y, npc.type); Main.npc[harbinger2].ai[2] = i; Main.npc[harbinger2].netUpdate = true; } } }
public override void ModifyTooltips(List <TooltipLine> tooltips) { if (Main.LocalPlayer.GetModPlayer <SGAPlayer>().nightmareplayer) { if (Main.expertMode) { tooltips.Add(new TooltipLine(mod, "Nmxx", "'I have provided you with one of my chromatic mirrors, and it will keep returning to your hand as you keep returning to " + Main.worldName + "'")); tooltips.Add(new TooltipLine(mod, "Nmxx", "You just might go far " + SGAmod.userName + ", just might...")); tooltips.Add(new TooltipLine(mod, "Nmxx", Idglib.ColorText(Color.OrangeRed, "By being granted this item your character is in Nightmare Mode, which does the following:"))); tooltips.Add(new TooltipLine(mod, "Nm1", Idglib.ColorText(Color.Red, "Enemies have 20% more HP"))); tooltips.Add(new TooltipLine(mod, "Nm1", Idglib.ColorText(Color.Red, "Your health is tripled, however you take triple damage"))); tooltips.Add(new TooltipLine(mod, "Nm1", Idglib.ColorText(Color.Red, "Some SGAmod bosses gain new abilities"))); tooltips.Add(new TooltipLine(mod, "Nm2", Idglib.ColorText(Color.Lime, "Your Expertise gain is increased by 15%"))); tooltips.Add(new TooltipLine(mod, "Nm2", Idglib.ColorText(Color.Lime, "Enemy money dropped is increased by 50%"))); tooltips.Add(new TooltipLine(mod, "Nm2", Idglib.ColorText(Color.Lime, "There is a 10% chance for enemies to drop double loot"))); tooltips.Add(new TooltipLine(mod, "Nm2", Idglib.ColorText(Color.DimGray, "Does not properly support online play, yet"))); //tooltips.Add(new TooltipLine(mod, "Nm1", "Using this item will enable Nightmare Hardcore, which ups the challenge even further for more Expertise")); foreach (TooltipLine line in tooltips) { if (line.mod == "Terraria" && line.Name == "ItemName") { line.overrideColor = Main.hslToRgb((Main.GlobalTime / 3f) % 1f, 0.50f, 0.3f); } } } else { tooltips.Add(new TooltipLine(mod, "Nmxx", "You're not on an expert mode world Nub! Nightmare Mode NOT enabled")); } } }
public override void AI() { if (projectile.ai[0] < 1) { int dir = 1; if (Main.myPlayer == projectile.owner) { NPC target = Main.npc[Idglib.FindClosestTarget(0, Main.MouseWorld, new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null && Vector2.Distance(target.Center, projectile.Center) < 2000) { Vector2 projvel = projectile.velocity; projectile.velocity = target.Center - projectile.Center; projectile.velocity.Normalize(); projectile.velocity *= 8f; IdgProjectile.Sync(projectile.whoAmI); projectile.netUpdate = true; } } dir = Math.Sign(projectile.velocity.X); Main.player[projectile.owner].ChangeDir(dir); Main.player[projectile.owner].itemRotation = (float)Math.Atan2(projectile.velocity.Y * dir, projectile.velocity.X * dir); //Main.player[projectile.owner].itemRotation = projectile.velocity.ToRotation() * Main.player[projectile.owner].direction; } projectile.ai[0] += 1; Vector2 randomcircle = new Vector2(Main.rand.Next(-8000, 8000), Main.rand.Next(-8000, 8000)); randomcircle.Normalize(); Vector2 ogcircle = randomcircle; randomcircle *= 0.1f; int num655 = Dust.NewDust(projectile.position, projectile.width, projectile.height, 206, projectile.velocity.X + randomcircle.X * 8f, projectile.velocity.Y + randomcircle.Y * 8f, 100, new Color(30, 30, 30, 20), 1f); Main.dust[num655].noGravity = true; Main.dust[num655].velocity *= 0.5f; }
public override void Explode() { if (projectile.timeLeft == openclosetime && projectile.ai[0] > 0) { Player owner = Main.player[projectile.owner]; if (owner != null && !owner.dead) { NPC target = Main.npc[Idglib.FindClosestTarget(0, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null && Vector2.Distance(target.Center, projectile.Center) < 1500) { Main.PlaySound(SoundID.Item, (int)projectile.Center.X, (int)projectile.Center.Y, 67, 0.25f, 0.5f); Vector2 gotohere = new Vector2(); gotohere = target.Center - projectile.Center; //Main.MouseScreen - projectile.Center; gotohere.Normalize(); Vector2 perturbedSpeed = new Vector2(gotohere.X, gotohere.Y).RotatedByRandom(MathHelper.ToRadians(10)) * projectile.velocity.Length(); int proj = Projectile.NewProjectile(new Vector2(projectile.Center.X, projectile.Center.Y), new Vector2(perturbedSpeed.X, perturbedSpeed.Y), ProjectileID.BulletHighVelocity, projectile.damage, projectile.knockBack / 8f, owner.whoAmI); Main.projectile[proj].timeLeft = 180; //Main.projectile[proj].penetrate = 1; Main.projectile[proj].GetGlobalProjectile <SGAprojectile>().onehit = true;; Main.projectile[proj].netUpdate = true; IdgProjectile.Sync(proj); } } } }
public override void ModifyTooltips(List <TooltipLine> tooltips) { TooltipLine tt = tooltips.FirstOrDefault(x => x.Name == "Damage" && x.mod == "Terraria"); if (tt != null) { string[] thetext = tt.text.Split(' '); string newline = ""; List <string> valuez = new List <string>(); foreach (string text2 in thetext) { valuez.Add(text2 + " "); } valuez.Insert(1, "trap "); foreach (string text3 in valuez) { newline += text3; } tt.text = newline; } tooltips.Add(new TooltipLine(mod, "DefenseTrapWeaponLine", "Base damage is boosted based on the average of your damage type increases")); tooltips.Add(new TooltipLine(mod, "DefenseTrapWeaponLine", "Trap damage boosts the damage projectiles do on hit")); tooltips.Add(new TooltipLine(mod, "DefenseTrapWeaponLine", Idglib.ColorText(Color.Red, "Will greatly limit you without wearing Gripping Gloves"))); tooltips.Add(new TooltipLine(mod, "DefenseTrapWeaponLine", Idglib.ColorText(Color.Red, SlowDown * 100 + "% slower movement effect, gloves reduce slowdown"))); base.ModifyTooltips(tooltips); }
public override void NPCLoot() { if (npc.boss) { List <Projectile> itz = Idglib.Shattershots(npc.Center - new Vector2(npc.spriteDirection * 20, 100), npc.Center - new Vector2(npc.spriteDirection * 20, 100), new Vector2(0, 0), mod.ProjectileType("SnowCloud"), 40, 4f, 0, 1, true, 0, false, 1000); if (Main.expertMode) { npc.DropBossBags(); } else { string [] dropitems = { "Starburster", "Snowfall", "IceScepter", "RubiedBlade", "IcicleFall" }; Item.NewItem((int)npc.position.X, (int)npc.position.Y, npc.width, npc.height, mod.ItemType(dropitems[Main.rand.Next(0, dropitems.Length)])); Item.NewItem((int)npc.position.X, (int)npc.position.Y, npc.width, npc.height, mod.ItemType("CryostalBar"), Main.rand.Next(15, 25)); } } Achivements.SGAAchivements.UnlockAchivement("Cirno", Main.LocalPlayer); if (SGAWorld.downedCirno == false) { SGAWorld.downedCirno = true; Idglib.Chat("The snowflakes have thawed from your wings", 50, 200, 255); } //float targetX = npc.Center.X; //float targetY = npc.Center.Y; //NPC.NewNPC((int)npc.Center.X + 13, (int)npc.Center.Y - 2, mod.NPCType("GraySlime6")); //NPC.NewNPC((int)npc.Center.X - 13, (int)npc.Center.Y - 2, mod.NPCType("GraySlime6")); }
public override void AI() { base.AI(); madeturrets = madeturrets + 1; if (laserblast == -1000) { laserblast = (int)Main.rand.Next(0, 50) - 300; } NPC ownerz = Main.npc[NPC.FindFirstNPC(mod.NPCType("CobaltWraith"))]; if (ownerz != null) { if ((ownerz.modNPC as CobaltWraith).raged == true) { laserblast = laserblast + 1; Player P = Main.player[ownerz.target]; if (laserblast % 20 == 0 && laserblast % 300 > 200 && laserblast > 0 && P != null && Main.expertMode && (Main.netMode != 1)) { Idglib.Shattershots(npc.Center, P.position, new Vector2(P.width, P.height), ProjectileID.WaterBolt, 20, 30, 0, 1, true, 0, true, 100); } } } if (madeturrets == 5) { //madeturrets=true; int nexus = NPC.NewNPC((int)npc.position.X, (int)npc.position.Y - 24, mod.NPCType(Main.rand.Next(0, 100) < 50 ? "CobaltArmorBow" : "CobaltChainSawPiece")); NPC armpeice = Main.npc[nexus]; CopperArmorPiece newguy3 = armpeice.modNPC as CopperArmorPiece; newguy3.attachedID = npc.whoAmI; armpeice.lifeMax = (int)(npc.lifeMax * 0.75f); armpeice.ai[1] = -16; armpeice.ai[1] = -0f; armpeice.life = (int)(npc.lifeMax * (0.75f)); armpeice.knockBackResist = 1f; armpeice.netUpdate = true; } }
public override void AI() { effects(0); projectile.ai[0] = projectile.ai[0] + 1; projectile.velocity.Y += 0.15f; projectile.rotation = (float)Math.Atan2((double)projectile.velocity.Y, (double)projectile.velocity.X) + 1.57f; NPC target = Main.npc[Idglib.FindClosestTarget(0, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null) { if (new Rectangle((int)projectile.position.X, (int)projectile.position.Y, projectile.width, projectile.height).Intersects (new Rectangle((int)target.position.X, (int)target.position.Y, target.width, target.height))) { IdgNPC.AddBuffBypass(target.whoAmI, mod.BuffType("Sodden"), 60 * 45); if (Main.player[projectile.owner].GetModPlayer <SGAPlayer>().MVMBoost) { IdgNPC.AddBuffBypass(target.whoAmI, mod.BuffType("SoddenSlow"), 60 * 45); } projectile.Kill(); } } }
public override void AI() { for (int num315 = 0; num315 < 2; num315 = num315 + 1) { int num316 = Dust.NewDust(new Vector2(projectile.position.X, projectile.position.Y), projectile.width, projectile.height, 226, 0f, 0f, 50, Main.hslToRgb(0.4f, 0f, 0.15f), 1.7f); Dust dust3 = Main.dust[num316]; dust3.velocity *= 0.3f; dust3.noGravity = true; dust3.scale = 1.8f; dust3.fadeIn = 1f + (float)Main.rand.Next(10) * 0.1f; } projectile.ai[0] = projectile.ai[0] + 1; if (projectile.ai[0] < 2) { keepspeed = (projectile.velocity).Length(); } NPC target = Main.npc[Idglib.FindClosestTarget(0, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null) { if ((target.Center - projectile.Center).Length() < 500f) { if (projectile.ai[0] < (250f) && projectile.ai[0] > (beginhoming)) { projectile.velocity = projectile.velocity + (projectile.DirectionTo(target.Center) * ((float)keepspeed * homing)); projectile.velocity.Normalize(); projectile.velocity = projectile.velocity * (float)keepspeed; } } } projectile.rotation = (float)Math.Atan2((double)projectile.velocity.Y, (double)projectile.velocity.X) + 1.57f; }
public override void AI() { effects(0); projectile.ai[0] = projectile.ai[0] + 1; projectile.velocity.Y += gravity; projectile.rotation = (float)Math.Atan2((double)projectile.velocity.Y, (double)projectile.velocity.X) + 1.57f; if (projectile.ai[0] < (beginhoming) && !projectile.hostile) { projectile.localAI[0] = -1; return; } Entity target = null; if (projectile.localAI[0] > -1) { if (projectile.hostile) { target = Main.player[(int)projectile.localAI[0]]; } else { target = Main.npc[(int)projectile.localAI[0]]; } } projectile.localAI[1] += 1; float previousspeed = projectile.velocity.Length(); if (projectile.localAI[0] < 0 || projectile.localAI[1] % 30 == 0 || ((!target.active || (target is NPC && ((target as NPC).dontTakeDamage || (target as NPC).life < 1))) && projectile.localAI[1] % 10 == 0)) { Entity target2; if (projectile.hostile) { target2 = Main.player[Idglib.FindClosestTarget(1, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; } else { target2 = Main.npc[Idglib.FindClosestTarget(0, projectile.Center, new Vector2(0f, 0f), true, true, true, projectile)]; } projectile.localAI[0] = target2.whoAmI; target = target2; } if (target != null) { if ((target.Center - projectile.Center).Length() < homingdist) { if (projectile.ai[0] < (maxhoming)) { projectile.velocity = projectile.velocity + (projectile.DirectionTo(target.Center) * ((float)previousspeed * homing)); projectile.velocity.Normalize(); projectile.velocity = projectile.velocity * previousspeed; } } } }
public override void ModifyTooltips(List <TooltipLine> tooltips) { if (SGAWorld.darknessVision) { tooltips.Add(new TooltipLine(mod, "CaliburnCompessUpgrade", Idglib.ColorText(Color.MediumPurple, "Upgraded to also point to Dark Sectors in the world"))); tooltips.Add(new TooltipLine(mod, "CaliburnCompessUpgrade", Idglib.ColorText(Color.MediumPurple, "Darkness from Dark Sectors is reduced while in your inventory"))); } }
public override void ModifyTooltips(List <TooltipLine> tooltips) { Color c = Placeable.TechPlaceable.LuminousAlterItem.AuroraLineColor; tooltips.Add(new TooltipLine(mod, "Plasma Item", Idglib.ColorText(c, "Aura weapons affect all around the player, friend and foe alike"))); tooltips.Add(new TooltipLine(mod, "AuraUse", Idglib.ColorText(c, "Reusing the item consumes an extra minion slot and increases the current Aura Strength"))); //tooltips.Add(new TooltipLine(mod, "AuraUse", "Alt Fire to relocate the Aura, Alt Fire again to return it to you")); }
public override void ModifyTooltips(List <TooltipLine> tooltips) { Color c = Main.hslToRgb((float)(Main.GlobalTime / 15) % 1f, 0.2f, 0.45f); tooltips.Add(new TooltipLine(mod, "Things", Idglib.ColorText(c, "All the functionality of the Grand Design And Cell phone"))); tooltips.Add(new TooltipLine(mod, "Things", Idglib.ColorText(c, "Grants surperior world building powers and mining speed while in inventory"))); tooltips.Add(new TooltipLine(mod, "Things", Idglib.ColorText(c, "Hold Shift and left click to teleport home"))); }
public override void ModifyTooltips(List <TooltipLine> tooltips) { Color c = Main.hslToRgb((float)(Main.GlobalTime / 4f) % 1f, 0.45f, 0.65f); tooltips.Add(new TooltipLine(mod, "Dedicated", Idglib.ColorText(c, "Dedicated to PeopleMCNugget"))); c = Main.hslToRgb((float)(Main.GlobalTime / 3.17f) % 1f, 0.65f, 0.45f); tooltips.Add(new TooltipLine(mod, "Dedicated2", Idglib.ColorText(c, "And the amazing spriters who helped him"))); }
public override void SpawnMoreExpert() { Idglib.Chat("Turn.... baacckk...", 5, 5, 60); int newguy = NPC.NewNPC((int)npc.position.X + 400, (int)npc.position.Y, mod.NPCType(level > 0 ? "CobaltArmorChainmail" : "CopperArmorChainmail")); NPC newguy2 = Main.npc[newguy]; CopperArmorPiece newguy3 = newguy2.modNPC as CopperArmorPiece; newguy3.attachedID = npc.whoAmI; newguy2.lifeMax = (int)(npc.lifeMax * 1.5f); newguy2.life = (int)(npc.lifeMax * (1.5f)); newguy2.knockBackResist = 1f; newguy2.netUpdate = true; raged = true; createarmorthings(); }
public static void QuestCheck(int questtype, Player ply) { ply.GetModPlayer <SGAPlayer>().UpgradeTF2(); if (tf2cratedrops == false) { tf2cratedrops = true; Idglib.Chat("<Contracker> Crates have began to drop for everyone!", 255, 255, 255); } }
public override List <TooltipLine> AddText(List <TooltipLine> tooltips) { tooltips.Add(new TooltipLine(mod, "Jellybru", "+16% magic damage, +100 Mana")); tooltips.Add(new TooltipLine(mod, "Jellybru", "magic cost reduced by 20%, minorly increased Life Regen")); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.Red, "50% Increased DoT damage taken"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "--When Shield Down--"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "Gain the powers of the nebula pillar!"))); return(tooltips); }
public override List <TooltipLine> AddText(List <TooltipLine> tooltips) { tooltips.Add(new TooltipLine(mod, "Jellybru", "+15% magic damage, +50 Mana")); tooltips.Add(new TooltipLine(mod, "Jellybru", "Movement and horizontal flight speed increased")); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.Red, "20% Increased DoT damage taken"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "--When Shield Down--"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "Gain a great speed increase!"))); return(tooltips); }
public override List <TooltipLine> AddText(List <TooltipLine> tooltips) { tooltips.Add(new TooltipLine(mod, "Jellybru", "+14% magic damage and crit chance, +50 Mana")); tooltips.Add(new TooltipLine(mod, "Jellybru", "Mana regen is greatly improved, Regen delay is reduced")); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.Red, "30% Increased DoT damage taken"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "--When Shield Down--"))); tooltips.Add(new TooltipLine(mod, "Jellybru", Idglib.ColorText(Color.PaleTurquoise, "Mana regen is improved to extreme levels!"))); return(tooltips); }
public override List <TooltipLine> AddText(List <TooltipLine> tooltips) { tooltips.Add(new TooltipLine(mod, "MisterCreeper", "25% increased melee damage, 32% increased throwing damage")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "Immunity to Knockback, greatly increased Life Regen")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "20% improved Endurance, 100 increased max life")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "35% DoT resistance")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", Idglib.ColorText(Color.Red, "10% reduced non-melee/throwing damage and crit chance"))); return(tooltips); }
public virtual List <TooltipLine> AddText(List <TooltipLine> tooltips) { tooltips.Add(new TooltipLine(mod, "MisterCreeper", "8% Increased Melee Crit, 12% increased throwing Crit")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "33% to not consume thrown items, 25% increased melee swing speed")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "15% increased throwing rate, 75 increased max life")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", "25% DoT resistance")); tooltips.Add(new TooltipLine(mod, "MisterCreeper", Idglib.ColorText(Color.Red, "10% reduced non-melee/throwing damage and crit chance"))); return(tooltips); }
public override void AI() { if (projectile.ai[0] == 0) { for (int i = 0; i < 4000; i += 1) { if (!Collision.CanHitLine(new Vector2(projectile.Center.X, projectile.position.Y + projectile.height), 1, 1, new Vector2(projectile.Center.X, projectile.position.Y + projectile.height + 2), 1, 1)) { break; } projectile.position.Y += 1; } } Player player = Main.player[base.projectile.owner]; projectile.ai[0] += 1; if (projectile.ai[0] > 30) { if (projectile.ai[0] % 20 == 0) { NPC target = Main.npc[Idglib.FindClosestTarget(0, projectile.Center - new Vector2(0f, 20f), new Vector2(0f, 0f), true, true, true, projectile)]; if (target != null && target.active && target.life > 0 && Vector2.Distance(target.Center, projectile.Center) < 300) { if (player.SGAPly().ConsumeElectricCharge(25, 60)) { Vector2 there = projectile.Center - new Vector2(3f, 20f); Vector2 Speed = (target.Center - there); Speed.Normalize(); Speed *= 2f; int prog = Projectile.NewProjectile(there.X, there.Y, Speed.X, Speed.Y, ModContent.ProjectileType <CBreakerBolt>(), projectile.damage, 1f, player.whoAmI, 0); Main.projectile[prog].minion = true; Main.projectile[prog].melee = false; Main.projectile[prog].usesLocalNPCImmunity = true; Main.projectile[prog].localNPCHitCooldown = -1; IdgProjectile.Sync(prog); Main.PlaySound(SoundID.Item93, player.Center); } } } for (int num315 = 0; num315 < 3; num315 = num315 + 1) { if (Main.rand.Next(0, 15) == 0) { Vector2 randomcircle = new Vector2(Main.rand.Next(-8000, 8000), Main.rand.Next(-8000, 8000)); randomcircle.Normalize(); int num622 = Dust.NewDust(new Vector2(projectile.Center.X, projectile.Center.Y) - new Vector2(3f, 20f) + randomcircle * 8, 0, 0, DustID.Electric, 0f, 0f, 100, default(Color), 0.75f); Main.dust[num622].scale = 1f; Main.dust[num622].noGravity = true; //Main.dust[num622].fadeIn = 1f + (float)Main.rand.Next(10) * 0.1f; Main.dust[num622].velocity.X = randomcircle.RotatedBy(MathHelper.ToRadians(-90)).X; Main.dust[num622].velocity.Y = randomcircle.RotatedBy(MathHelper.ToRadians(-90)).Y; Main.dust[num622].alpha = 150; } } } }
public override void ModifyTooltips(List <TooltipLine> tooltips) { base.ModifyTooltips(tooltips); Color c = Main.hslToRgb((float)(Main.GlobalTime / 4) % 1f, 0.4f, 0.45f); //string potion="[i:" + ItemID.RedPotion + "]"; tooltips.Add(new TooltipLine(mod, "IDG Debug Item", Idglib.ColorText(c, "PhilBill44's dev weapon"))); }