OpenPF2 / Plugin

Core C++ Game Logic for OpenPF2 (Status: Pre-alpha)
https://www.openpf2.org/
Other
23 stars 6 forks source link

[Players] Attacks with Targets During Encounters #34

Closed GuyPaddock closed 10 months ago

GuyPaddock commented 1 year ago

As a Player, I'd like it if I could target an enemy character with any of the attacks my character is capable of performing and execute that attack so that I can have a productive role in encounters.

Acceptance Criteria

Given my character has been granted at least one attack ability:

  1. I'd expect to be able to open a menu or screen where I can select a character attack ability to execute.

  2. Given I've opened the ability menu/screen:

    1. Given I select an ability from the list of abilities my character possesses:

      1. I'd expect to be able to select the enemy who should be targeted by the attack (either before opening the ability menu, while in the menu, or after making the ability selection).
      2. I'd expect activation of the ability to be triggered, with the selected target passed to the activation.
    2. Given an ability has been bound to an input key and I press the input key:

      1. Given I am targeting an enemy (e.g., using the encounter cursor and hovering over a movement tile containing the target enemy): I'd expect activation of the ability to be triggered.
      2. Given I have no target enemy selected (i.e., the movement tile I have selected is empty or contains only a friendly unit): I'd expect my input to be ignored and the ability not to be activated.
  3. Given an ability has been provided with a target enemy and the ability has been activated:

    1. Given it's not currently my character's turn to act, according to initiative: I'd expect the ability I activated to be queued, but not execute until my character's turn comes up.
    2. Given it's currently my character's turn to act: I'd expect my character to act out the attack ability when it comes up in the character's queue of actions.
GuyPaddock commented 1 year ago

Blocked by https://github.com/OpenPF2/PF2Core/issues/8.