Package com.j3d.engine.interact.macros


package com.j3d.engine.interact.macros
Macros. Another insane use of EventListeners

What?

A Macro is defined to be a list of instructions that a user can do which is to be automated by the engine so the user doesn't have to do it themselves. So far the following can be macro instructions:

  • Command Invocations
  • Selections
  • Camera deltas
others like key presses or mouser movement might come soon. if so i'll update the doc.

Macros can either be used simply to define a key press to execute a certain command such as to execute commands faster or for multiple actions to set up a complex scene with a key press.

Subclasses in this

MacroLine is a singular instruction that a macro can execute. it's a record of a line which is usually in a human readable format and an instruction type

InstructionType is the type of macro instruction the line is. This is usually serialized with the macro line itself as a 3 character prefix with a colon.

Macro is a singular Macro with multiple MacroLines. it has no other capabilities other than storing the name of a macro and it's instruction set together

MacroUtils is the manager of macros for the engine. A single instance of it can be found within StaticRefs and its how the rest of the engine can manage query and update the current macros within the engine.

MacroRecorder is a stateful, single-instantiated class which has the purpose of recording user input to save as a macro. This is where the user actions are serialized into string format and saved.

MacroRunner is a stateful, single-instantiated class with the purposes of running a Macro and all the nuances of how to call the next instruction.