custom-chatbot / data /TurnData.qtn
fastx's picture
Upload 84 files
ac55997
raw
history blame
1.31 kB
import PlayCommandData;
import SkipCommandData;
asset TurnConfig;
enum TurnType { Play, Countdown }
enum TurnStatus { Inactive, Active, Resolving }
enum TurnEndReason { Time, Skip, Play, Resolved }
struct TurnData
{
player_ref Player;
entity_ref Entity;
asset_ref<TurnConfig> ConfigRef;
TurnType Type;
TurnStatus Status;
Int32 Number;
Int32 Ticks;
}
global {
TurnData CurrentTurn;
}
// ------------------ Signals ------------------
signal OnTurnEnded (TurnData data, TurnEndReason reason);
signal OnPlayCommandReceived (PlayerRef player, PlayCommandData data);
signal OnSkipCommandReceived (PlayerRef player, SkipCommandData data);
// ------------------ Events ------------------
abstract event TurnEvent { TurnData Turn; }
synced event TurnTypeChanged : TurnEvent { TurnType PreviousType; }
synced event TurnStatusChanged : TurnEvent { TurnStatus PreviousStatus; }
synced event TurnEnded : TurnEvent { TurnEndReason Reason; }
synced event TurnTimerReset : TurnEvent { }
synced event TurnActivated : TurnEvent { }
abstract event CommandEvent { player_ref Player; }
event PlayCommandReceived : CommandEvent { PlayCommandData Data; }
event SkipCommandReceived : CommandEvent { SkipCommandData Data; }