// Go absolutely wild once a mushroom is eaten
 private void Player_ObjectEaten(On.Player.orig_ObjectEaten orig, Player self, IPlayerEdible edible)
 {
     if (edible is Mushroom && self.room.world.game.GetStorySession?.saveState is SprinterSaveState css)
     {
         css.isTurbo = true;
     }
     orig(self, edible);
 }
Exemple #2
0
    private static void Player_ObjectEaten(On.Player.orig_ObjectEaten orig, Player self, IPlayerEdible edible)
    {
        if (self.graphicsModule != null)
        {
            (self.graphicsModule as PlayerGraphics).LookAtNothing();
        }
        bool flag = true;

        if (edible is Centipede)
        {
            flag = false;
        }
        else if (edible is VultureGrub)
        {
            flag = false;
        }
        else if (edible is Hazer)
        {
            flag = false;
        }
        else if (edible is EggBugEgg)
        {
            flag = false;
        }
        else if (edible is SmallNeedleWorm)
        {
            flag = false;
        }
        else if (edible is JellyFish)
        {
            flag = false;
        }
        if (flag && (self.playerState.slugcatCharacter != 1 || edible is Fly))
        {
            for (int i = 0; i < edible.FoodPoints; i++)
            {
                self.AddQuarterFood();
            }
        }
        else
        {
            self.AddFood(edible.FoodPoints);
        }
        if (edible is KarmaFlower)
        {
            self.AddFood(1);
        }
        if (self.spearOnBack != null)
        {
            self.spearOnBack.interactionLocked = true;
        }
    }