|
|
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
-
- public abstract class ActiveBlock : Block
- {
- #region Read-Only Variables
- public bool isFinished { get; protected set; }
- #endregion Read-Only Variables
-
- #region Class Functions
-
- /// <summary>
- /// Is called after all players have taken one move
- ///
- /// Should be implemented by a derived class
- /// </summary>
- public virtual IEnumerator OnEnvironmentTurn(PlayerData[] allPlayers)
- {
- isFinished = true;
- yield break;
- }
-
- /// <summary>
- /// Called after all players have finished all their moves
- ///
- /// Should be implemented by a derived class
- /// </summary>
- public virtual IEnumerator OnRoundEnd(PlayerData[] allPlayers)
- {
- isFinished = true;
- yield break;
- }
-
- public void Reset()
- {
- isFinished = false;
- }
-
- /// <summary>
- /// Returns what order this block should be called in for the environment turn;
- /// </summary>
- /// <returns>The Higher the number returned the earlier it goes</returns>
- /// <remarks>This was made abstract because it shouldn't be accidentally changed + so we don;t accidentally forget to implement it</remarks>
- public abstract int GetInitative();
-
- #endregion Class Functions
- }
-
|