コード例 #1
0
 public UtilityFocus() : base(LaugicalityPlayer.FOCUS_NAME_UTILITY, "Utility", Color.Purple, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedKingSlime", "You are immune to slimes") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedEyeOfCthulhu", "Hunter & Shine potion effects") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedDuneSharkron", "Immune to fall damage") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedWorldEvilBoss", "Immune to Confusion, Cursed Flames. Immune to Contact Damage once every 2 minutes") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedHypothema", "Immune to cold debuffs (including 'Frostburn')") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedQueenBee", "Super Bees, Immune to Poison") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedRagnar", "Immunity to Lava, 'On Fire', and 'Burning'. Wrath potions are 50% more effective") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, DownedSkeletronEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedSkeletron", "Immune to Cursed & Darkness. Night Owl & Dangersense potion effects") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedAnDio", "Decreased cooldown of Time Stop. You are Immune to Time Stop") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedWallOfFleshEffect", "Spelunker Effect, Ironskin and Regen Potions are 50% stronger, +15% Mining Speed") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedTwinsEffect", "Increased Flight Time if worn under wings") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedDestroyerEffect", "Immunity to Knockback") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedSkeletronPrimeEffect", "Innate Ankh Charm") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedAnnihilator", "Pressing the Ability Key destroys hostile projectiles and gives you 4 seconds of immunity. 90 second cooldown") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedSlybertron", "Taking a healing potion gives less Potion Sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedSteamTrain", "You are immune to 'Steamy'. Attacks inflict 'Steamy'") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedPlantera", "You are immune while grappled to a tile, but also True Cursed") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedGolem", "Increase to all stats during the Daytime") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedDukeFishron", "Free movement in liquids. Increased Mobility while in liquids") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedEtheria", "Immune to 'Frostbite' and Etherial Spirits") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "UtilityFocusDownedMoonLord", "You cannot lose life to life draining debuffs") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "UtilityFocusCurse1", "+5% Damage Taken") { overrideColor = Color.Purple }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "UtilityFocusCurse2", "You cannot be immune to knockback") { overrideColor = Color.Purple }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "UtilityFocusCurse3", "Debuffs deal double damage when you are above 50% life") { overrideColor = Color.Purple }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "UtilityFocusCurse4", "You are immune to most positive buffs") { overrideColor = Color.Purple }),
 })
 {
 }
コード例 #2
0
 public TenacityFocus() : base(LaugicalityPlayer.FOCUS_NAME_TENACITY, "Tenacity", Color.Silver, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedKingSlime", "You are immune to slimes") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedEyeOfCthulhu", "Movement speed increased for a time after taking damage") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedDuneSharkron", "You are immune to fall damage") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedWorldEvilBoss", "+5 Defense when below 50% Life") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedHypothema", "Increased defense when affected by a life draining debuff") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedQueenBee", "Immune to 'Poison' and 'Venom'") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedRagnar", "Increased Defense for a time after submerging in Lava") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, DownedSkeletronEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedSkeletron", "+5 Defense at Night") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedAnDio", "Don't take damage while Time is stopped") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedWallOfFleshEffect", "The longer you go without taking damage, the higher your defense") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedTwinsEffect", "+6 Defense when flying") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedDestroyerEffect", "Prevent a lethal hit of damage if it does over 50 damage once every 90 seconds") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedSkeletronPrimeEffect", "Half of your global damage modifier is applied to your defense") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedAnnihilator", "Pressing the Ability Key makes you invincible for 4 seconds. 60 Second Cooldown") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedSlybertron", "+8 Defense when you have potion sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedSteamTrain", "Negate contact damage once every 90 seconds") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedPlantera", "+8 Defense when you are grappling") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedGolem", "+15 Defense and immune to Knockback when standing still") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedDukeFishron", "Being in liquid greatly increases defense") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedEtheria", "Take 20% less damage in the Etherial") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "TenacityFocusDownedMoonLord", "Negate a hit of damage once every 30 seconds") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "TenacityFocusCurse1", "-4 Defense") { overrideColor = Color.Silver }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "TenacityFocusCurse2", "Taking damage makes you lose 12 defense for a time") { overrideColor = Color.Silver }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "TenacityFocusCurse3", "You take 25% more damage above 50% Life") { overrideColor = Color.Silver }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "TenacityFocusCurse4", "Your defense is halved") { overrideColor = Color.Silver }),
 })
 {
 }
コード例 #3
0
 public MobilityFocus() : base(LaugicalityPlayer.FOCUS_NAME_MOBILITY, "Mobility", Color.Green, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedKingSlime", "Increased Jump Height") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedEyeOfCthulhu", "Increased movement speed when below 50% life") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedDuneSharkron", "Innate magic carpet effect") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedWorldEvilBoss", "+10% Increased Movement Speed and Run Speed") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedHypothema", "Immunity to cold debuffs (including Chilled and Frostburn)") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedQueenBee", "When not moving vertically, increased Run Speed") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedRagnar", "Greatly increased Mobility while in the Obsidium, while in the Underworld, or while affected by a debuff") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, DownedSkeletronEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedSkeletron", "Low chance to dodge an attack when hit") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedAnDio", "Greatly increased Mobility while Time is stopped. You can move during Time Stop.") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedWallOfFleshEffect", "Pressing the Ability Key teleports you to the mouse. 15 second cooldown.") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedTwinsEffect", "Increased wing flight time if worn under wings") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedDestroyerEffect", "You are immune to Knockback") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedSkeletronPrimeEffect", "Half of your global damage modifier is applied to your Run Speed") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedAnnihilator", "Cooldown of the teleportation Ability reduced to 8 seconds. Become immune after teleporting") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedSlybertron", "Increased Jump Height and Wing acceleration when you have Potion Sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedSteamTrain", "The faster you move, the higher your damage. +10% Max Run Speed.") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedPlantera", "Large movement boost when under 50% life") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedGolem", "When standing still, charge up energy. Moving releases it in a burst of speed.") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedDukeFishron", "Free movement in liquids. Greatly increased Mobility while in liquids.") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedEtheria", "+20% Max Run Speed and Movement Speed while in the Etherial") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "MobilityFocusDownedMoonLord", "+50% Movement speed, +10% Max Run Speed. Chance to dodge attacks based on how fast you are moving") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "MobilityFocusCurse1", "-5% Movement Speed & Max Run Speed") { overrideColor = Color.Green }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "MobilityFocusCurse2", "Taking damage slows you down for a time.") { overrideColor = Color.Green }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "MobilityFocusCurse3", "Reduced movement speed when above 50% Life") { overrideColor = Color.Green }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "MobilityFocusCurse4", "You cannot fly") { overrideColor = Color.Green }),
 })
 {
 }
コード例 #4
0
 public VitalityFocus() : base(LaugicalityPlayer.FOCUS_NAME_VITALITY, "Vitality", Color.Gold, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedKingSlime", "+4 Life Regen while Jumping") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedEyeOfCthulhu", "+25 Max Life during the Night") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedDuneSharkron", "+25 Max Life during the Day") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedWorldEvilBoss", "If you are losing life, lose 2 less life (to a minimum of 1)") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedHypothema", "Increased defense when affected by a life draining debuff") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedQueenBee", "Honey provides quadruple the normal regeneration") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedRagnar", "Greatly increased Life Regeneration while submerged in Lava") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, (p, h) => p.player.statLifeMax2 += p.player.statDefense, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedSkeletronEffect", "Your defense is added to your Max Life") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedAnDio", "Greatly increased Life Regeneration while Time is Stopped") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedWallOfFleshEffect", "Pressing the Ability Key will heal you for 15% of your max life. 30 second cooldown.") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedTwinsEffect", "Increased life regen while flying") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedDestroyerEffect", "Prevent a lethal hit of damage if it does over 50 damage once every 90 seconds") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedSkeletronPrimeEffect", "Half your global damage modifier is applied to your Max Life") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedAnnihilator", "Ability cooldown reduced to 20 seconds. Attacks inflict 'Lovestruck'") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedSlybertron", "Increased life regen when you have Potion Sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedSteamTrain", "Taking damage when not at full health returns you to full health instead once every 150 seconds.") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedPlantera", "Greatly increased life regen when grappled to a tile") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedGolem", "Greatly increased life regen while standing still") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedDukeFishron", "Being in liquid quadruples regeneration from Honey (again)") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedEtheria", "+20% Max Life while in the Etherial") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "VitalityFocusDownedMoonLord", "If you would die from taking damage, your Max Life is reduced by 50% and you return to your max life. If your Max Life is under 100, this effect does not trigger.") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "VitalityFocusCurse1", "-5% Max Life") { overrideColor = Color.Gold }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "VitalityFocusCurse2", "If you are losing life, lose an additional 2 life per second") { overrideColor = Color.Gold }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "VitalityFocusCurse3", "You cannot regen above 50% of your Max Life") { overrideColor = Color.Gold }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "VitalityFocusCurse4", "You cannot boost your life total") { overrideColor = Color.Gold }),
 })
 {
 }
コード例 #5
0
 public FerocityFocus() : base(LaugicalityPlayer.FOCUS_NAME_FEROCITY, "Ferocity", Color.Red, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedKingSlime", "Attacks inflict 'Slimed'") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedEyeOfCthulhu", "+5% Damage at Night") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedDuneSharkron", "Increased damage the lower your life is") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedWorldEvilBoss", "Gain 'Blood Rage' when struck, increasing damage for a time") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedHypothema", "Attacks inflict 'Frostburn'") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedQueenBee", "Attacks inflict 'Poison', Thorns effect") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedRagnar", "Increased damage for a time after submerging in Lava") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, DownedSkeletronEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedSkeletron", "+8% Crit Chance") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedAnDio", "Increased damage while Time is stopped") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedWallOfFleshEffect", "+8% Damage. Attacks inflict 'On Fire'") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedTwinsEffect", "Attacks inflict 'Cursed Flame'") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedDestroyerEffect", "Enemies that collide with you take 200% of the damage dealt to you") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedSkeletronPrimeEffect", "Half of your global damage modifier is applied twice") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedAnnihilator", "Pressing the Ability Key makes you deal 25% more damage and take 80% more damage. Can be stacked up to 2 times, then resets to 0.") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedSlybertron", "+10% Damage when you have Potion Sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedSteamTrain", "The faster you move, the higher your damage") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedPlantera", "Attacks inflict 'Jungle Plague'") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedGolem", "The longer you stand still without moving while a boss is alive, the higher your damage.") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedDukeFishron", "+10% Damage when in liquid") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedEtheria", "+20% Damage in the Etherial") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "FerocityFocusDownedMoonLord", "Pressing the Ability key now makes you deal 100% more damage and makes you take 200% more damage per stack") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "FerocityFocusCurse1", "-5% Damage") { overrideColor = Color.Red }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "FerocityFocusCurse2", "Your critical strike chance is halved") { overrideColor = Color.Red }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "FerocityFocusCurse3", "-20% Damage when above 50% Life") { overrideColor = Color.Red }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "FerocityFocusCurse4", "You cannot buff your damage") { overrideColor = Color.Red }),
 })
 {
 }
コード例 #6
0
        private static void GetCurseTooltips(List <TooltipLine> tooltips)
        {
            LaugicalityPlayer laugicalityPlayer = LaugicalityPlayer.Get();

            for (int i = 0; i < LaugicalityWorld.GetCurseCount() && i < laugicalityPlayer.Focus.CursesCount; i++)
            {
                for (int j = 0; j < laugicalityPlayer.Focus.NemesesCount; j++)
                {
                    if (laugicalityPlayer.Focus.Nemeses[j].GetCurse(i).Condition(laugicalityPlayer))
                    {
                        tooltips.Add(laugicalityPlayer.Focus.Nemeses[j].GetCurse(i).Tooltip);
                    }
                }
            }

            for (int i = 0; i < Math.Floor((float)LaugicalityWorld.GetCurseCount() / 2f) && i < laugicalityPlayer.Focus.CursesCount; i++)
            {
                for (int j = 0; j < laugicalityPlayer.Focus.EnemiesCount; j++)
                {
                    if (laugicalityPlayer.Focus.Enemies[j].GetCurse(i).Condition(laugicalityPlayer))
                    {
                        tooltips.Add(laugicalityPlayer.Focus.Enemies[j].GetCurse(i).Tooltip);
                    }
                }
            }
        }
コード例 #7
0
        private static void GetCurseEffects(Player player, bool hideVisual)
        {
            LaugicalityPlayer laugicalityPlayer = LaugicalityPlayer.Get(player);

            for (int i = 0; i < LaugicalityWorld.GetCurseCount() && i < laugicalityPlayer.Focus.CursesCount; i++)
            {
                for (int j = 0; j < laugicalityPlayer.Focus.NemesesCount; j++)
                {
                    if (laugicalityPlayer.Focus.Nemeses[j].GetCurse(i).Condition(laugicalityPlayer))
                    {
                        laugicalityPlayer.Focus.Nemeses[j].GetCurse(i).Effect(laugicalityPlayer, hideVisual);
                    }
                }
            }

            for (int i = 0; i < Math.Floor((float)LaugicalityWorld.GetCurseCount() / 2f) && i < laugicalityPlayer.Focus.CursesCount; i++)
            {
                for (int j = 0; j < laugicalityPlayer.Focus.EnemiesCount; j++)
                {
                    if (laugicalityPlayer.Focus.Enemies[j].GetCurse(i).Condition(laugicalityPlayer))
                    {
                        laugicalityPlayer.Focus.Enemies[j].GetCurse(i).Effect(laugicalityPlayer, hideVisual);
                    }
                }
            }
        }
コード例 #8
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (Main.LocalPlayer != player)
            {
                return;
            }

            LaugicalityPlayer laugicalityPlayer = LaugicalityPlayer.Get(Main.LocalPlayer);

            if (laugicalityPlayer.Focus == null)
            {
                return;
            }

            for (int i = 0; i < laugicalityPlayer.Focus.EffectsCount; i++)
            {
                if (laugicalityPlayer.Focus.GetEffect(i).Condition(laugicalityPlayer))
                {
                    laugicalityPlayer.Focus.GetEffect(i).Effect(laugicalityPlayer, hideVisual);
                }
            }

            if (LaugicalityWorld.GetCurseCount() > 0)
            {
                GetCurseEffects(player, hideVisual);
            }
            base.UpdateAccessory(player, hideVisual);
        }
コード例 #9
0
 public CapacityFocus() : base(LaugicalityPlayer.FOCUS_NAME_CAPACITY, "Capacity", Color.Blue, new FocusEffect[]
 {
     new FocusEffect(p => NPC.downedSlimeKing, DownedKingSlimeEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedKingSlime", "If you take contact damage while falling, stomp on the enemy that deals the damage") { overrideColor = new Color(0x2B, 0x9D, 0xE9) }),
     new FocusEffect(p => NPC.downedBoss1, DownedEyeOfCthulhuEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedEyeOfCthulhu", "Release Eyes when damaged") { overrideColor = new Color(0xB0, 0x3A, 0x2E) }),
     new FocusEffect(p => LaugicalityWorld.downedDuneSharkron, DownedDuneSharkronEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedDuneSharkron", "Launch enemies affected by gravity into the air on contact") { overrideColor = new Color(0xF4, 0xE6, 0x92) }),
     new FocusEffect(p => NPC.downedBoss2, DownedWorldEvilBossEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedWorldEvilBoss", "Gain 'Blood Rage' when struck, increasing damage for a time") { overrideColor = new Color(0x88, 0x4E, 0xA0) }),
     new FocusEffect(p => LaugicalityWorld.downedHypothema, DownedHypothemaEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedHypothema", "Frost Touch- Inflict Frostburn on enemies in a short radius around you") { overrideColor = new Color(0x98, 0xE1, 0xEA) }),
     new FocusEffect(p => NPC.downedQueenBee, DownedQueenBeeEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedQueenBee", "Taking damage creates a ring of Thorns around you that damage and knock back enemies") { overrideColor = new Color(0xF3, 0x9C, 0x12) }),
     new FocusEffect(p => LaugicalityWorld.downedRagnar, DownedRagnarEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedRagnar", "Reduced damage from lava. Increased Damage and Defense while On Fire") { overrideColor = new Color(0xED, 0x4B, 0x23) }),
     new FocusEffect(p => NPC.downedBoss3, DownedSkeletronEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedSkeletron", "Spawn a friendly Dungeon Guardian when you take contact damage") { overrideColor = new Color(0x83, 0x91, 0x92) }),
     new FocusEffect(p => LaugicalityWorld.downedAnDio, DownedAnDioEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedAnDio", "Taking damage below 25% life automatically stops time. You are immune while time is stopped") { overrideColor = new Color(0x42, 0x86, 0xF4) }),
     new FocusEffect(p => Main.hardMode, DownedWallOfFleshEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedWallOfFleshEffect", "Taking more than 1 damage is reduced to 1 damage once every 2 minutes") { overrideColor = new Color(0xAC, 0x39, 0x5A) }),
     new FocusEffect(p => NPC.downedMechBoss2, DownedTwinsEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedTwinsEffect", "Taking damage creates a Shadow Double that follows you and deals damage to enemies") { overrideColor = new Color(0x2B, 0xD3, 0x4D) }),
     new FocusEffect(p => NPC.downedMechBoss1, DownedDestroyerEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedDestroyerEffect", "Taking damage when below 66% life spawns a friendly Probe") { overrideColor = new Color(0xDF, 0x0A, 0x0A) }),
     new FocusEffect(p => NPC.downedMechBoss3, DownedSkeletronPrimeEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedSkeletronPrimeEffect", "Call a Dungeon Guardian Prime to fight for you when below 50% life") { overrideColor = new Color(0xAA, 0xAA, 0xAA) }),
     new FocusEffect(p => LaugicalityWorld.downedAnnihilator, DownedAnnihilatorEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedAnnihilator", "Pressing the Ability Key makes you take 1 damage. 5 second cooldown") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSlybertron, DownedSlybertronEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedSlybertron", "Have an Electrosphere Aura around you which deals damage to enemies in a short range while you have Potion Sickness") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => LaugicalityWorld.downedSteamTrain, DownedSteamTrainEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedSteamTrain", "Deal more damage when Immune. Immune time increased") { overrideColor = new Color(0xF9, 0xEB, 0x90) }),
     new FocusEffect(p => NPC.downedPlantBoss, DownedPlanteraEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedPlantera", "Innate Spore Sack") { overrideColor = new Color(0x81, 0xD8, 0x79) }),
     new FocusEffect(p => NPC.downedGolemBoss, DownedGolemEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedGolem", "Spawn a Golem Head that shoots lasers at nearby enemies when below 50% life") { overrideColor = new Color(0xCC, 0x88, 0x37) }),
     new FocusEffect(p => NPC.downedFishron, DownedDukeFishronEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedDukeFishron", "Unleash the Sharks upon taking damage") { overrideColor = new Color(0x37, 0xC4, 0xCC) }),
     new FocusEffect(p => LaugicalityWorld.downedEtheria || LaugicalityWorld.downedTrueEtheria, DownedEtheriaEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedEtheria", "'Etherial Rage'- After taking damage, gain +20 Defense and +20% Damage for a time") { overrideColor = new Color(0x85, 0xCB, 0xF7) }),
     new FocusEffect(p => NPC.downedMoonlord, DownedMoonLordEffect, new TooltipLine(Laugicality.Instance, "CapacityFocusDownedMoonLord", "Immune time after taking damage doubled. 20% Damage reduction. Spawn a True Eye of Cthulhu when below 50% Life") { overrideColor = new Color(0x37, 0xCC, 0x8B) }),
 }, new FocusEffect[]
 {
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect1, new TooltipLine(Laugicality.Instance, "CapacityFocusCurse1", "Take 5 additional damage each time you are damaged") { overrideColor = Color.Blue }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect2, new TooltipLine(Laugicality.Instance, "CapacityFocusCurse2", "Taking damage reduces your defense for a time") { overrideColor = Color.Blue }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect3, new TooltipLine(Laugicality.Instance, "CapacityFocusCurse3", "Take 50% more collision damage above 50% Life") { overrideColor = Color.Blue }),
     new FocusEffect(p => LaugicalityWorld.GetCurseCount() >= 1, CurseEffect4, new TooltipLine(Laugicality.Instance, "CapacityFocusCurse4", "Your immune time is halved") { overrideColor = Color.Blue }),
 })
 {
 }
コード例 #10
0
        public override void ModifyTooltips(List <TooltipLine> tooltips)
        {
            base.ModifyTooltips(tooltips);

            LaugicalityPlayer laugicalityPlayer = LaugicalityPlayer.Get();

            Cursed = !LaugicalityWorld.downedNecrodon;
            if (Cursed)
            {
                tooltips.Add(new TooltipLine(mod, "SoulStoneNoPlayerFocus", "--An otherwordly entity seems to have sealed some of its power--"));
            }

            if (laugicalityPlayer.Focus == null)
            {
                tooltips.Add(new TooltipLine(mod, "SoulStoneNoPlayerFocus", "You must select a Focus to use the Soul Stone!")
                {
                    overrideColor = Color.Red
                });
                return;
            }

            tooltips.Add(new TooltipLine(Laugicality.Instance, "SoulStoneDisplayFocusName", "Your focus is " + laugicalityPlayer.Focus.DisplayName + '.')
            {
                overrideColor = laugicalityPlayer.Focus.AssociatedColor
            });

            for (int i = 0; i < laugicalityPlayer.Focus.EffectsCount; i++)
            {
                if (laugicalityPlayer.Focus.GetEffect(i).Condition(laugicalityPlayer))
                {
                    tooltips.Add(laugicalityPlayer.Focus.GetEffect(i).Tooltip);
                }
            }

            if (LaugicalityWorld.GetCurseCount() > 0)
            {
                tooltips.Add(new TooltipLine(Laugicality.Instance, "CurseLine", "----Curses----")
                {
                    overrideColor = Color.Red
                });

                GetCurseTooltips(tooltips);
            }
            if (!Cursed)
            {
                tooltips.Add(new TooltipLine(mod, "SoulStoneNoPlayerFocus", "--The Curse has been lifted--")
                {
                    overrideColor = Color.Gold
                });
            }
        }
コード例 #11
0
ファイル: LivingLycoris.cs プロジェクト: Dierney/Laugicality
        public static void StructureGen(int xPosO, int yPosO, bool mirrored)
        {
            //Obsidium Heart

            /**
             * 0 = Do Nothing
             * 1 = Lycoris
             * 2 = Radiata
             * 3 = Obsidium Chest
             * 9 = Kill tile
             * */
            int[,] StructureGen = new int[, ]
            {
                { 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0 }
                , { 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 }
                , { 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0 }
                , { 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 }
                , { 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 }
                , { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
                , { 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1 }
                , { 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }
                , { 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 1, 2, 2, 2, 9, 9, 2, 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 9, 9, 9, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 9, 9, 9, 9, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 2, 2, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 2, 2, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 2, 2, 0, 0, 2, 2, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 9, 2, 2, 0, 0, 2, 2, 2, 0, 0, 1, 1, 2, 2, 2, 1, 1, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 9, 9, 2, 2, 2, 0, 0, 2, 2, 2, 2, 2, 2, 2, 1, 1, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 9, 9, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 9, 9, 9, 9, 9, 2, 2, 2, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 9, 9, 9, 9, 9, 9, 9, 2, 2, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 9, 9, 9, 9, 9, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2, 9, 9, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 9, 9, 9, 9, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 9, 9, 9, 3, 9, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 9, 9, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
                , { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
            };

            for (int i = 0; i < StructureGen.GetLength(1); i++)
            {
                for (int j = 0; j < StructureGen.GetLength(0); j++)
                {
                    if (mirrored)
                    {
                        if (TileCheckSafe((int)(xPosO + StructureGen.GetLength(1) - i), (int)(yPosO + j)))
                        {
                            if (StructureGen[j, i] == 1)
                            {
                                WorldGen.KillTile(xPosO + StructureGen.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + StructureGen.GetLength(1) - i, yPosO + j, Laugicality.instance.TileType("Lycoris"), true, true);
                            }
                            if (StructureGen[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + StructureGen.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + StructureGen.GetLength(1) - i, yPosO + j, Laugicality.instance.TileType("Radiata"), true, true);
                            }
                            if (StructureGen[j, i] == 3)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + StructureGen.GetLength(1) - i, yPosO + j, (ushort)Laugicality.instance.TileType("Radiata"));
                            }
                            if (StructureGen[j, i] == 9)
                            {
                                WorldGen.KillTile(xPosO + StructureGen.GetLength(1) - i, yPosO + j);
                            }
                        }
                    }
                    else
                    {
                        if (TileCheckSafe((int)(xPosO + i), (int)(yPosO + j)))
                        {
                            if (StructureGen[j, i] == 1)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, Laugicality.instance.TileType("Lycoris"), true, true);
                            }
                            if (StructureGen[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, Laugicality.instance.TileType("Radiata"), true, true);
                            }
                            if (StructureGen[j, i] == 3)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + i, yPosO + j, (ushort)Laugicality.instance.TileType("Radiata"));
                            }
                            if (StructureGen[j, i] == 9)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                            }
                        }
                    }
                }
            }
        }
コード例 #12
0
 public override void HoldItem(Player player)
 {
     if (player.itemAnimation == player.itemAnimationMax - 1)
     {
         int x;
         int y;
         if (Main.SmartCursorShowing)
         {
             x = Main.SmartCursorX;
             y = Main.SmartCursorY;
         }
         else
         {
             x = (int)Main.MouseWorld.X / 16;
             y = (int)Main.MouseWorld.Y / 16;
         }
         if (Main.tile[x, y] != null && Main.tile[x, y].type == TileID.SnowBlock && Main.netMode != 1 && LaugicalityWorld.Distance(x, y, player.position.X / 16, player.position.Y / 16) <= player.lastTileRangeX + .25)
         {
             Item.NewItem(new Vector2(x * 16 + 4, y * 16), ItemID.Snowball, Main.rand.Next(1, 3));
         }
     }
 }
コード例 #13
0
        public static void StructureGen(int xPosO, int yPosO, bool mirrored)
        {
            //Obsidium Heart

            /**
             * 0 = Do Nothing
             * 1 = Lycoris
             * 2 = Radiata
             * 3 = Obsidium Chest
             * 9 = Kill tile
             * */


            for (int i = 0; i < _structureArray.GetLength(1); i++)
            {
                for (int j = 0; j < _structureArray.GetLength(0); j++)
                {
                    if (mirrored)
                    {
                        if (TileCheckSafe((int)(xPosO + _structureArray.GetLength(1) - i), (int)(yPosO + j)))
                        {
                            if (_structureArray[j, i] == 1)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, ModContent.TileType <Lycoris>(), true, true);
                            }
                            if (_structureArray[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, ModContent.TileType <Tiles.Radiata>(), true, true);
                            }
                            if (_structureArray[j, i] == 3)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + _structureArray.GetLength(1) - i, yPosO + j, (ushort)ModContent.TileType <Tiles.Radiata>());
                            }
                            if (_structureArray[j, i] == 9)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                            }
                        }
                    }
                    else
                    {
                        if (TileCheckSafe((int)(xPosO + i), (int)(yPosO + j)))
                        {
                            if (_structureArray[j, i] == 1)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, ModContent.TileType <Lycoris>(), true, true);
                            }
                            if (_structureArray[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, ModContent.TileType <Tiles.Radiata>(), true, true);
                            }
                            if (_structureArray[j, i] == 3)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + i, yPosO + j, (ushort)ModContent.TileType <Tiles.Radiata>());
                            }
                            if (_structureArray[j, i] == 9)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                            }
                        }
                    }
                }
            }
        }
コード例 #14
0
        public static void StructureGen(int xPosO, int yPosO, bool mirrored)
        {
            //Obsidium Heart

            /**
             * 0 = Do Nothing
             * 1 = obsidium chest
             * 2 = Obsidium Brick
             * 3 = Platforms
             * 4 = Lycoris
             * 5 = Radiata
             * 6 = Lava
             * 7 = lavafall
             * 8 = wooden crate
             * 9 = Kill tile
             * */


            for (int i = 0; i < _structureArray.GetLength(1); i++)
            {
                for (int j = 0; j < _structureArray.GetLength(0); j++)
                {
                    if (mirrored)
                    {
                        if (TileCheckSafe((int)(xPosO + _structureArray.GetLength(1) - i), (int)(yPosO + j)))
                        {
                            if (_structureArray[j, i] == 1)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + _structureArray.GetLength(1) - i, yPosO + j, (ushort)ModContent.TileType <ObsidiumBrick>());
                            }
                            if (_structureArray[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, ModContent.TileType <ObsidiumBrick>(), true, true);
                            }
                            if (_structureArray[j, i] == 3)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, 19, true, true, -1, 13);
                            }
                            if (_structureArray[j, i] == 4)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, ModContent.TileType <Lycoris>(), true, true);
                            }
                            if (_structureArray[j, i] == 5)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j, ModContent.TileType <Tiles.Radiata>(), true, true);
                            }
                            if (_structureArray[j, i] == 6)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                Main.tile[xPosO + _structureArray.GetLength(1) - i, yPosO + j].lava(true);
                                Main.tile[xPosO + _structureArray.GetLength(1) - i, yPosO + j].liquid = 255;
                            }
                            if (_structureArray[j, i] == 7)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.KillWall(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.PlaceWall(xPosO + _structureArray.GetLength(1) - i, yPosO + j, 137, true); //Lavafall Wall
                            }
                            if (_structureArray[j, i] == 8)
                            {
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i + 1, yPosO + j);
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j - 1);
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i + 1, yPosO + j - 1);
                                Terraria.WorldGen.PlaceObject(xPosO + _structureArray.GetLength(1) - i, yPosO + j, 376, true, 0, -1, -1);
                            }
                            if (_structureArray[j, i] == 9)
                            {
                                Main.tile[xPosO + _structureArray.GetLength(1) - i, yPosO + j].liquid = 0;
                                WorldGen.KillTile(xPosO + _structureArray.GetLength(1) - i, yPosO + j);
                            }
                        }
                    }
                    else
                    {
                        if (TileCheckSafe((int)(xPosO + i), (int)(yPosO + j)))
                        {
                            if (_structureArray[j, i] == 1)
                            {
                                LaugicalityWorld.PlaceObsidiumChest(xPosO + i, yPosO + j, (ushort)ModContent.TileType <ObsidiumBrick>());
                            }
                            if (_structureArray[j, i] == 2)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, ModContent.TileType <ObsidiumBrick>(), true, true);
                            }
                            if (_structureArray[j, i] == 3)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, 19, true, true, -1, 13);
                            }
                            if (_structureArray[j, i] == 4)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, ModContent.TileType <Lycoris>(), true, true);
                            }
                            if (_structureArray[j, i] == 5)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.PlaceTile(xPosO + i, yPosO + j, ModContent.TileType <Tiles.Radiata>(), true, true);
                            }
                            if (_structureArray[j, i] == 6)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                Main.tile[xPosO + i, yPosO + j].lava(true);
                                Main.tile[xPosO + i, yPosO + j].liquid = 255;
                            }
                            if (_structureArray[j, i] == 7)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.KillWall(xPosO + i, yPosO + j);
                                WorldGen.PlaceWall(xPosO + i, yPosO + j, 137, true); //Lavafall Wall
                            }
                            if (_structureArray[j, i] == 8)
                            {
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                                WorldGen.KillTile(xPosO + i + 1, yPosO + j);
                                WorldGen.KillTile(xPosO + i, yPosO + j - 1);
                                WorldGen.KillTile(xPosO + i + 1, yPosO + j - 1);
                                Terraria.WorldGen.PlaceObject(xPosO + i, yPosO + j, 376, true, 0, -1, -1);
                            }
                            if (_structureArray[j, i] == 9)
                            {
                                Main.tile[xPosO + i, yPosO + j].liquid = 0;
                                WorldGen.KillTile(xPosO + i, yPosO + j);
                            }
                        }
                    }
                }
            }
        }
コード例 #15
0
        private static void Furnish(int height, int width)
        {
            if (numRooms == 1 || Main.rand.Next(20) == 0)
            {
                int chestPos = Main.rand.Next(2, width - 4);
                WorldGen.KillTile(x + chestPos, y + height - 2);
                WorldGen.KillTile(x + chestPos + 1, y + height - 2);
                WorldGen.KillTile(x + chestPos, y + height - 3);
                WorldGen.KillTile(x + chestPos + 1, y + height - 3);
                LaugicalityWorld.PlaceObsidiumChest(x + chestPos, y + height - 2, (ushort)ModContent.TileType <ObsidiumBrick>());
            }
            for (int i = 2; i < width - 4; i++)
            {
                if (TileCheckSafe(x + i, y + height - 2))
                {
                    if (Main.tile[x + i, y + height - 2].type == 0 && Main.tile[x + i + 1, y + height - 2].type == 0 && Main.tile[x + i + 2, y + height - 2].type == 0 && Main.tile[x + i + 3, y + height - 2].type == 0 && Main.rand.Next(width) == 0)
                    {
                        WorldGen.KillTile(x + i, y + height - 2);
                        WorldGen.KillTile(x + i + 1, y + height - 2);
                        WorldGen.KillTile(x + i + 2, y + height - 2);
                        WorldGen.KillTile(x + i + 3, y + height - 2);
                        WorldGen.KillTile(x + i, y + height - 3);
                        WorldGen.KillTile(x + i + 1, y + height - 3);
                        WorldGen.KillTile(x + i + 2, y + height - 3);
                        WorldGen.KillTile(x + i + 3, y + height - 3);

                        WorldGen.PlaceObject(x + i + 1, y + height - 2, ModContent.TileType <ObsidiumBedTile>());
                    }
                    else if (Main.tile[x + i, y + height - 2].type == 0 && Main.tile[x + i + 1, y + height - 2].type == 0 && Main.tile[x + i + 2, y + height - 2].type == 0 && Main.rand.Next(width - 2) == 0)
                    {
                        WorldGen.KillTile(x + i, y + height - 2);
                        WorldGen.KillTile(x + i + 1, y + height - 2);
                        WorldGen.KillTile(x + i + 2, y + height - 2);
                        WorldGen.KillTile(x + i, y + height - 3);
                        WorldGen.KillTile(x + i + 1, y + height - 3);
                        WorldGen.KillTile(x + i + 2, y + height - 3);

                        if (Main.rand.Next(4) == 0)
                        {
                            WorldGen.PlaceObject(x + i + 1, y + height - 2, ModContent.TileType <ObsidiumDresserTile>());
                        }
                        else
                        {
                            WorldGen.PlaceObject(x + i + 1, y + height - 2, ModContent.TileType <ObsidiumTableTile>());
                            if (Main.tile[x + i, y + height - 4].type == 0)
                            {
                                WorldGen.PlaceObject(x + i, y + height - 4, ModContent.TileType <LavaGemCandleTile>());
                            }
                        }
                    }
                    else if (Main.tile[x + i, y + height - 2].type == 0 && Main.tile[x + i + 1, y + height - 2].type == 0 && Main.rand.Next(width - 4) == 0)
                    {
                        WorldGen.KillTile(x + i, y + height - 2);
                        WorldGen.KillTile(x + i + 1, y + height - 2);
                        WorldGen.KillTile(x + i, y + height - 3);
                        WorldGen.KillTile(x + i + 1, y + height - 3);

                        if (Main.rand.Next(width * 3) == 0)
                        {
                            LaugicalityWorld.PlaceObsidiumChest(x + Main.rand.Next(2, width - 4), y + height - 2, (ushort)ModContent.TileType <ObsidiumBrick>());
                        }
                        else if (Main.rand.Next(width * 3) == 0)
                        {
                            WorldGen.AddLifeCrystal(x + i, y + height - 2);
                        }
                        else if (Main.rand.Next(2) == 0)
                        {
                            WorldGen.PlaceObject(x + i, y + height - 2, ModContent.TileType <ObsidiumSinkTile>());
                        }
                        else
                        {
                            WorldGen.PlaceObject(x + i, y + height - 2, ModContent.TileType <ObsidiumWorkbenchTile>());
                            if (Main.tile[x + i, y + height - 3].type == 0)
                            {
                                WorldGen.PlaceObject(x + i, y + height - 3, ModContent.TileType <LavaGemCandleTile>());
                            }
                        }
                    }
                    else if (Main.tile[x + i, y + height - 2].type == 0 && Main.rand.Next(width - 6) == 0)
                    {
                        if (Main.tile[x + i, y + height - 3].type == 0 && Main.tile[x + i, y + height - 4].type == 0 && Main.rand.Next(2) == 0)
                        {
                            WorldGen.PlaceObject(x + i, y + height - 2, ModContent.TileType <LavaGemLampTile>());
                        }
                        else if (Main.tile[x + i, y + 1].type == 0 && Main.tile[x + i, y + 2].type == 0)
                        {
                            WorldGen.PlaceObject(x + i, y + 1, ModContent.TileType <LavaGemLanternTile>());
                        }
                    }
                }
            }
        }