#include <avatar_mover_process.h>
Public Types | |
| enum | MovementFlags { MOVE_MOUSE_DIRECTION = 0x001, MOVE_RUN = 0x0002, MOVE_STEP = 0x0004, MOVE_JUMP = 0x0008, MOVE_TURN_LEFT = 0x0010, MOVE_TURN_RIGHT = 0x0020, MOVE_FORWARD = 0x0040, MOVE_BACK = 0x0080, MOVE_LEFT = 0x0100, MOVE_RIGHT = 0x0200, MOVE_UP = 0x0400, MOVE_DOWN = 0x0800, MOVE_ATTACKING = 0x1000, MOVE_PENDING_TURN_LEFT = 0x2000, MOVE_PENDING_TURN_RIGHT = 0x4000, MOVE_SHORT_JUMP = 0x008000, MOVE_ROLL_LEFT = 0x010000, MOVE_ROLL_RIGHT = 0x020000, MOVE_STEP_LEFT = 0x040000, MOVE_STEP_RIGHT = 0x080000, MOVE_STEP_FORWARD = 0x100000, MOVE_STEP_BACK = 0x200000, MOVE_TOGGLE_CROUCH = 0x400000, MOVE_ANY_DIRECTION = MOVE_MOUSE_DIRECTION | MOVE_FORWARD | MOVE_BACK | MOVE_LEFT | MOVE_RIGHT | MOVE_UP | MOVE_DOWN } |
Public Types inherited from Ultima::Ultima8::Process | |
| enum | processflags { PROC_ACTIVE = 0x0001, PROC_SUSPENDED = 0x0002, PROC_TERMINATED = 0x0004, PROC_TERM_DEFERRED = 0x0008, PROC_FAILED = 0x0010, PROC_RUNPAUSED = 0x0020, PROC_TERM_DISPOSE = 0x0040, PROC_PREVENT_SAVE = 0x0080 } |
Public Member Functions | |
| void | run () override |
| void | resetIdleTime () |
| bool | loadData (Common::ReadStream *rs, uint32 version) |
| void | saveData (Common::WriteStream *ws) override |
| save Process data | |
| bool | hasMovementFlags (uint32 flags) const |
| void | setMovementFlag (uint32 mask) |
| virtual void | clearMovementFlag (uint32 mask) |
| void | resetMovementFlags () |
| void | onMouseDown (int button, int32 mx, int32 my) |
| void | onMouseUp (int button) |
| bool | onActionDown (KeybindingAction action) |
| bool | onActionUp (KeybindingAction action) |
Public Member Functions inherited from Ultima::Ultima8::Process | |
| Process (ObjId _itemNum=0, uint16 type=0) | |
| uint32 | getProcessFlags () const |
| bool | is_active () const |
| bool | is_terminated () const |
| bool | is_suspended () const |
| void | fail () |
| terminate the process and recursively fail all processes waiting for it | |
| virtual void | terminate () |
| terminate the process. This wakes up all processes waiting for it. | |
| void | terminateDeferred () |
| terminate next frame | |
| void | setRunPaused () |
| run even when paused | |
| void | waitFor (ProcId pid) |
| suspend until process 'pid' returns. If pid is 0, suspend indefinitely | |
| void | waitFor (Process *proc) |
| suspend until process returns. If proc is 0, suspend indefinitely | |
| void | suspend () |
| suspend process | |
| void | wakeUp (uint32 result) |
| Wake up when the process we were waiting for has finished. | |
| virtual void | onWakeUp () |
| A hook to add aditional behavior on wakeup, before anything else happens. | |
| void | setItemNum (ObjId it) |
| void | setType (uint16 ty) |
| void | setTicksPerRun (uint32 val) |
| ProcId | getPid () const |
| ObjId | getItemNum () const |
| uint16 | getType () const |
| uint32 | getTicksPerRun () const |
| virtual Common::String | dumpInfo () const |
| dump some info about this process to a string | |
| bool | loadData (Common::ReadStream *rs, uint32 version) |
| load Process data | |
| bool | validateWaiters () const |
Protected Attributes | |
| uint32 | _lastAttack |
| uint32 | _idleTime |
| MButton | _mouseButton [2] |
| uint32 | _movementFlags |
Protected Attributes inherited from Ultima::Ultima8::Process | |
| ProcId | _pid |
| process id | |
| uint32 | _flags |
| uint32 | _ticksPerRun |
| ObjId | _itemNum |
| item we are assigned to | |
| uint16 | _type |
| uint32 | _result |
| process result | |
| Std::vector< ProcId > | _waiting |
Base class for mover processes that decide which animation to do next based on last anim and keyboard / mouse / etc.