示例#1
0
 public static void DoubleKeys(Action <KeyBulletPickup> acshon, KeyBulletPickup key)
 {
     acshon(key);
     foreach (PassiveItem passives in GameManager.Instance.GetActivePlayerClosestToPoint(key.specRigidbody.UnitCenter, true).passiveItems)
     {
         if (passives is UnluckyKey)
         {
             key.specRigidbody.Velocity           = BraveMathCollege.DegreesToVector(Vector2.Angle(key.specRigidbody.UnitCenter, GameManager.Instance.GetActivePlayerClosestToPoint(key.specRigidbody.UnitCenter, true).specRigidbody.UnitCenter) + 180);
             key.specRigidbody.CollideWithTileMap = true;
         }
     }
 }
 public static void keyPickupHookMethod(Action <KeyBulletPickup, PlayerController> orig, KeyBulletPickup self, PlayerController player)
 {
     orig(self, player);
     if (player.HasPickupID(Gungeon.Game.Items["nn:keychain"].PickupObjectId))
     {
         if (!self.IsRatKey && UnityEngine.Random.value < .25f)
         {
             player.carriedConsumables.KeyBullets += 1;
         }
         else if (self.IsRatKey && UnityEngine.Random.value < .1f)
         {
             player.carriedConsumables.ResourcefulRatKeys += 1;
         }
     }
 }
示例#3
0
        public static void DoubleKeys(Action <KeyBulletPickup, PlayerController> acshon, KeyBulletPickup key, PlayerController player)
        {
            acshon(key, player);
            foreach (PassiveItem passives in player.passiveItems)
            {
                if (passives is KeyDoubler && BoxOTools.BasicRandom(0.5f))
                {
                    player.carriedConsumables.KeyBullets += 1;
                    player.BloopItemAboveHead(itemator.sprite);


                    if (player.PlayerHasActiveSynergy("Twice the Pride"))
                    {
                        if (player.characterIdentity != PlayableCharacters.Robot)
                        {
                            player.healthHaver.ApplyHealing(1f);
                        }
                        else
                        {
                            player.healthHaver.Armor += 1;
                        }
                        AkSoundEngine.PostEvent("Play_OBJ_heart_heal_01", passives.gameObject);
                        player.PlayEffectOnActor(ResourceCache.Acquire("Global VFX/vfx_healing_sparkles_001") as GameObject, Vector3.zero);
                    }
                }
            }
        }
 public static void keyPickupHookMethod(Action <KeyBulletPickup, PlayerController> orig, KeyBulletPickup self, PlayerController player)
 {
     orig(self, player);
     if (keyRegulator)
     {
         if (self.IsRatKey)
         {
             giveCash(player, 10);
         }
         else
         {
             giveCash(player, 6);
         }
         keyRegulator = false;
     }
     else
     {
         keyRegulator = true;
     }
 }
示例#5
0
 public static void VeryShady(Action <KeyBulletPickup, PlayerController> acshon, KeyBulletPickup key, PlayerController player)
 {
     acshon(key, player);
     foreach (PassiveItem passives in GameManager.Instance.GetActivePlayerClosestToPoint(key.specRigidbody.UnitCenter, true).passiveItems)
     {
         if (passives is CodexUmbra && BoxOTools.BasicRandom(.5f))
         {
             GiveRandomItem(player);
         }
     }
 }