TurnTaker
Takes turns in the TurnOrder that covers it: it acts only on its Team’s turn. Off its turn the player’s controls don’t reach it (nor scripts on it reading input) and its Patrol, Chase, Grid Chase, Grid Patrol, Attack and Shooter hold still; it still falls, gets pushed and gets hurt. Give it Actions to limit what it does in a turn: each attack swing, each shot and each step of its Grid Movement uses one, and once every turn taker on a team has used theirs (and their swings have landed), the turn passes. With actions, a Grid Chase or Grid Patrol steps once an action and passes when it has nowhere to go or nothing to swing at, and a Grid Patrol waits whole turns.
Works with: TurnOrder (the turns it takes: the one that covers it); Hand (a Hand played on its team’s turn); Flipper (a Flipper flipped on its side’s turn); Plunger (a Plunger pulled on its side’s turn); Slingshot (a Slingshot pulled on its side’s turn)
Properties
Section titled “Properties”Each is listed as its key in the scene file and the MCP tools, then its kind of value, its default and what it does.
team: text = “Player”. The team it acts for, one of its turn order’s Teams, e.g. “Player”: the team it’s on in every genre (see Teams). Empty takes the team of a Team on it or the entity it’s inside. In a network game with teams, a player’s character is on its player’s team instead. (Formerly Side.) (Names a team.) (Field: a name.)actions: a whole number = 0. How many actions it gets each turn: attack swings, shots, grid steps, or Act from a script. Once it has used them it waits for its next turn. 0 has no limit, so its team’s turn ends some other way. (Field: a number.)
actionsUsed: a whole number = 0. How many of its actions it has used this turn. The game sets it back to 0 as each of its team’s turns starts. (Field: a number.)
While the game runs
Section titled “While the game runs”Not saved with the scene; scripts read them, and entity_get shows them as live while the game plays.
side: text. What Team was called before every genre’s teams were one idea. Kept for scripts.actionsLeft: a whole number. How many actions it has left this turn; -1 with no limit.isTurn: true or false. True while it can act: it’s its team’s turn and it has actions left. The game keeps it up to date.
Scripts use it as TurnTaker: its methods, events and values that aren’t saved with the scene.