コード例 #1
0
ファイル: PotPotPlayer.cs プロジェクト: PizzaKirby/PotPot
 public bool CalamityPreKill(double damage, int hitDirection, bool pvp, ref bool playSound, ref bool genGore, ref PlayerDeathReason damageSource)
 {
     if (Main.LocalPlayer.GetModPlayer <CalamityPlayer>() != null)
     {
         if (Main.LocalPlayer.GetModPlayer <CalamityPlayer>().godSlayer&& !Main.LocalPlayer.GetModPlayer <CalamityPlayer>().godSlayerCooldown)
         {
             if (Main.LocalPlayer.GetModPlayer <CalamityPlayer>().draconicSurge)
             {
                 player.AddBuff(PotPot.Instance.Calamity.BuffType("DraconicSurgeCooldown"), 120, true);
                 int additionalTime = 0;
                 for (int i = 0; i < Player.MaxBuffs; i++)
                 {
                     if (player.buffType[i] == BuffID.PotionSickness)
                     {
                         additionalTime = player.buffTime[i];
                         break;
                     }
                 }
                 float potionSicknessTime = 30.0f + (float)Math.Ceiling((double)additionalTime / 60.0);
                 player.AddBuff(BuffID.PotionSickness, CalamityUtils.SecondsToFrames(potionSicknessTime), true);
             }
         }
         if (Main.LocalPlayer.GetModPlayer <CalamityPlayer>().silvaSet&& Main.LocalPlayer.GetModPlayer <CalamityPlayer>().silvaCountdown > 0)
         {
             if (Main.LocalPlayer.GetModPlayer <CalamityPlayer>().draconicSurge&& !Main.LocalPlayer.GetModPlayer <CalamityPlayer>().draconicSurgeCooldown)
             {
                 player.AddBuff(PotPot.Instance.Calamity.BuffType("DraconicSurgeCooldown"), CalamityUtils.SecondsToFrames(60f), true);
                 int additionalTime = 0;
                 for (int n = 0; n < Player.MaxBuffs; n++)
                 {
                     if (player.buffType[n] == BuffID.PotionSickness)
                     {
                         additionalTime = player.buffTime[n];
                         break;
                     }
                 }
                 float potionSicknessTime = 30f + (float)Math.Ceiling((double)additionalTime / 60.0);
                 player.AddBuff(BuffID.PotionSickness, CalamityUtils.SecondsToFrames(potionSicknessTime), true);
             }
         }
     }
     return(true);
 }
コード例 #2
0
        private static bool RemoveDeathModeCrap(TorrentialTear.orig_UseItem orig,
                                                CalamityMod.Items.Tools.ClimateChange.TorrentialTear self, object player)
        {
            if (!CataclysmConfig.Instance.torrentialTearNerfRemoval)
            {
                return(orig(self, player));
            }

            if (!Main.raining)
            {
                CalamityUtils.StartRain(true);
            }
            else
            {
                Main.raining = false;
            }

            CalamityNetcode.SyncWorld();

            return(true);
        }