Skip to content

Special QADComponent for Invoke's #59

@Longor1996

Description

@Longor1996

So the idea here is to, basically, take all the code from talecraft/client/gui/invoke/InvokePanelBuilder.java and turn it into a single self-contained QADInvokeComponent, instead of creating a bunch of separate components. This should make the data-binding simpler. Also, opens up the possibility to add more kinds of Invokes more easily.

  • Create a special QADComponent for Invoke instances, internally consisting of a set of small components...
    • The component must reflect the NBT compound that represents a Invoke.
    • The GUI must not need to reload to reflect changing the Invoke type.
    • A drop-down button (or similar) for selection of Invoke-type.
    • Depending on Invoke type, different sets of input (which are synced on GUI close):
      • Null-Invoke: Doesn't need any input.
      • Blocktrigger-Invoke: A button to set the affected region and a toggle-button for the trigger-type.
      • Command-Invoke: A text-field.
      • Embedded-Script-Invoke: A text-field.
      • File-Script-Invoke: A text-field.
    • A button to 'execute' the invoke (for testing), using the clients current (possibly modified) NBT data for the Invoke.
    • A 'cancel' button to throw away any changes made to the invoke.
  • Replace all uses of InvokePanelBuilder with the new component.
  • Make sure all future uses of Invoke's go trough the new component.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions