lycan-subscribe / VRCPoker

2 stars 0 forks source link

Implement Poker chip betting game logic #15

Open icedog225 opened 1 year ago

icedog225 commented 1 year ago

Example use case of betting during a turn

  1. Turn starts, a sound (and animation?) plays to alert the player it is their turn
  2. Player hovers hand over their first chip pile
    • Chips are highlighted as the hand moves up and down, starting at the grab point and moving upward
  3. Player picks up chips by grabbing
    • The correct number of chips are removed from the pile and are grabbed by the players hand (synced)
  4. Player drops chips in the betting area.
    • "Call" text on button is replaced with "Bet [value]"
    • Chips re-stack in correct orientation (synced)
  5. Player realizes they put in too many chips and wants to take two out
    • Almost the same sequence as steps 2, 3 - except now from betting area back to their chip stack
  6. Player is extremely drunk. so they drop the chips they are holding onto the floor (this is very realistic)
    • Chips fall with physics - after being on ground for a few seconds, they animate back to the pile they were just at
  7. Player picks up same amount of chips again, brings them from betting area back to their chip stack
    • "Bet [value]" text lowers in value as chip values are updated inside betting pile and player's stack
    • Chips re-stack as needed
  8. Player repeats steps 2-4 for two more types of chips in their chip stack, in order to make a funny number
  9. Player finalizes bet by pressing "Bet [value]", ending turn
    • A confirmation sound plays
    • PokerGameState.TriggerCallBetRaise() is called, increasing the pot value (and presumably the minimum Call value is updated as well)
    • Chips animate from betting area to pot
    • Player chip stack rebalances itself

thoughts on implementation

subtasks

potential edge cases to look out for

If applicable, we can update this later to link to the relevant issue #

icedog225 commented 1 year ago

realized this is kind of an implementation of #12