mirror of
https://github.com/scp-fs2open/fs2open.github.com.git
synced 2026-11-08 17:48:46 -10:00
This introduces action definitions which can then be instantiated to form actual actions with expressions as their parameters.
24 lines
307 B
C++
24 lines
307 B
C++
#pragma once
|
|
|
|
#include "common.h"
|
|
|
|
namespace actions {
|
|
|
|
enum class ActionResult
|
|
{
|
|
Finished,
|
|
Errored,
|
|
Wait
|
|
};
|
|
|
|
class Action {
|
|
public:
|
|
virtual ~Action() = 0;
|
|
|
|
virtual ActionResult execute(ProgramLocals& locals) const = 0;
|
|
|
|
virtual std::unique_ptr<Action> clone() const = 0;
|
|
};
|
|
|
|
} // namespace actions
|