private static void CheckInputPatch(On.Player.orig_checkInput orig, Player player)
        {
            int playerNumber = player.playerState.playerNumber;

            orig(player);
            if (player.stun == 0 && !player.dead)
            {
                PhysicalObject objectChecked;

                try
                {
                    objectChecked = player.grasps[0].grabbed;
                }
                catch
                {
                    objectChecked = null;
                }

                if ((player.input[playerNumber].thrw && objectChecked != null && objectChecked.abstractPhysicalObject.type == EnumExt_NewItems.Bow) || bowStats[playerNumber].controlLocked > 0)
                {
                    playerInput[playerNumber] = player.input[0];
                    player.input[0].x         = 0;
                    player.input[0].y         = 0;
                    Player.InputPackage[] input = player.input;
                    int x = 0;
                    player.input[x].analogueDir = input[x].analogueDir * 0f;

                    bowStats[playerNumber].isDrawing = true;
                    bowStats[playerNumber].released  = true;
                }
                else
                {
                    bowStats[playerNumber].isDrawing = false;
                }
            }
        }
Beispiel #2
0
 private static void Player_checkInput(On.Player.orig_checkInput orig, Player self)
 {
     orig(self);
 }