|
|
@ -0,0 +1,58 @@ |
|
|
|
using System.Collections; |
|
|
|
using System.Collections.Generic; |
|
|
|
using UnityEngine; |
|
|
|
|
|
|
|
public class ActiveBlock : Block |
|
|
|
{ |
|
|
|
|
|
|
|
protected List<PlayerData> currentPlayers = new List<PlayerData>(); |
|
|
|
|
|
|
|
|
|
|
|
#region Class Functions
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Is called after all players have taken one move
|
|
|
|
///
|
|
|
|
/// Should be implemented by a derived class
|
|
|
|
/// </summary>
|
|
|
|
public virtual void OnEnvironmentTurn(PlayerData[] allPlayers) |
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Is called when a player moves onto this block
|
|
|
|
///
|
|
|
|
/// Should be implemented by a derived class
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="player">Player which moved on to block</param>
|
|
|
|
public virtual void OnWalkedOnByPlayer(PlayerData player) |
|
|
|
{ |
|
|
|
currentPlayers.Add(player); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Is called when a player moves off of block
|
|
|
|
///
|
|
|
|
/// Should be implemented by a derived class
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="player">Player which moved on to block</param>
|
|
|
|
public virtual void OnLeftByPlayer(PlayerData player) |
|
|
|
{ |
|
|
|
currentPlayers.Remove(player); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Called after all players have finished all their moves
|
|
|
|
///
|
|
|
|
/// Should be implemented by a derived class
|
|
|
|
/// </summary>
|
|
|
|
public virtual void OnRoundEnd(PlayerData[] allPlayers) |
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#endregion Class Functions
|
|
|
|
|
|
|
|
|
|
|
|
} |