Beispiel #1
0
 public void LoadState(HiveState newState)
 {
     _state = newState;
     if (newState.LevelIndex < 0 && _startingLevelIndex >= 0)
     {
         newState.LevelIndex = _startingLevelIndex; // overriding the starting index here if set.
     }
     LoadHiveLevel(newState.LevelIndex);
 }
Beispiel #2
0
    public static GameState CreateNew()
    {
        var lGameState = new GameState();

        if (Debug.isDebugBuild)
        {
            lGameState.Seed = 42;
        }
        else
        {
            lGameState.Seed = Random.Range(int.MinValue, int.MaxValue);
        }

        lGameState.Attributes = new AttributeSet();
        lGameState.World      = WorldState.CreateNew(lGameState.Seed);
        lGameState.Hive       = HiveState.CreateNew();
        lGameState.Statistics = StatisticsSet.CreateDefault();
        lGameState.Upgrades   = UpgradeState.CreateNew();
        lGameState.ChangeDayManager();
        return(lGameState);
    }