Exemple #1
0
 private void Start()
 {
     gameData     = FindObjectOfType <GameData>();
     marbleList   = FindObjectOfType <MarbleList>();
     orderInLayer = 0;
     Dictionary <string, float> kvp = new Dictionary <string, float>();
 }
Exemple #2
0
        private string Solve(int lastMarble)
        {
            var marbles = new MarbleList();

            marbles.AddFirst(0);

            var currentNode = marbles.First;
            var playerScore = new long[PlayerCount];

            int currentPlayer = 0;

            for (int marble = 1; marble <= lastMarble; marble++)
            {
                if (marble % 23 == 0)
                {
                    playerScore[currentPlayer] += marble;
                    currentNode = marbles.Previous(currentNode, 7);
                    playerScore[currentPlayer] += currentNode.Value;
                    currentNode = currentNode.Next;
                    marbles.Remove(currentNode.Previous);
                }
                else
                {
                    marbles.AddAfter(marbles.Next(currentNode, 1), marble);
                    currentNode = marbles.Next(currentNode, 2);
                }

                currentPlayer = (currentPlayer + 1) % PlayerCount;
            }

            return(playerScore.Max().ToString());
        }
Exemple #3
0
    void Start()
    {
        //Load game data at start of game from JSON
        Dictionary <string, PlayerData> deserializedProduct = JsonConvert.DeserializeObject <Dictionary <string, PlayerData> >(dataManager.Load());

        gameData   = deserializedProduct;
        marbleList = FindObjectOfType <MarbleList>();
        gameData   = marbleList.AddNewMarblesToGameData(gameData);
        dataManager.NewSave(gameData);
    }
Exemple #4
0
 void Start()
 {
     marbleList = FindObjectOfType <MarbleList>();
     DisplayShopItems();
 }