Exemplo n.º 1
0
        public MemoryCards(MemoryGame game, Stream loadStream = null)
        {
            // Check of we een spel moeten laden
            bool loadGame = loadStream != null;

            // copieer de benodige object handles
            currentGame = game;
            memoryGrid  = currentGame.memoryGrid;

            // copieer de benodige data vanuit het memorygame object game
            nColumns       = currentGame.nColumns;
            nRows          = currentGame.nRows;
            nKaartenUniek  = currentGame.nKaartenUniek;
            nKaartenGelijk = currentGame.nKaartenGelijk;

            if (loadGame)
            {
                // laad de gebruikte kaarten
                lUsedKaartIds = loadStream.Load() as List <int>;
            }
            else
            {
                // maak een lijst van random kaart IDs
                lUsedKaartIds = GetRndmKaartLijst(nKaartenUniek);
            }

            // maak een resource object van de kaart gebruikte image resources
            kaartResource = GetKaartResources(lUsedKaartIds);

            if (loadGame)
            {
                // laad de kaart posities
                lGridKaarten = loadStream.Load() as List <int>;
            }
            else
            {
                // zorg dat alle kaarten twee keer voorkomen en zet ze in toevallige volgorde
                lGridKaarten = SplitAndRandomize(lUsedKaartIds);
            }

            // maak een lijst van buttons voor de kaart speelveld
            lSymboolButtons = GetBttnLijst(lGridKaarten);

            if (loadGame)
            {
                // laad en set de status van de kaarten
                SetKaartStatus(loadStream.Load() as List <KaartStatus>);
            }

            // registreer de buttons in het grid van het speelveld
            int index = 0;

            foreach (Button symboolBttn in lSymboolButtons)
            {
                memoryGrid.AddByIndex(symboolBttn, index++);
            }
        }
Exemplo n.º 2
0
        private MemoryResource GetKaartResources(List <int> lUsedKaartIds)
        {
            // maak een resource object van de kaart image resources
            MemoryResource kaartResources = new MemoryResource(GameData.sKaartLocatie);

            kaartResources.Add(GameData.sKaartAchterkant);
            kaartResources.AddList(lUsedKaartIds);

            return(kaartResources);
        }
Exemplo n.º 3
0
        public MemoryOverlays(MemoryGame game)
        {
            // copieer de benodige object handles
            currentGame = game;

            // copieer de benodige data vanuit het memorygame object
            nKaartenGelijk = currentGame.nKaartenGelijk;
            memoryGrid     = currentGame.memoryGrid;

            // maak een resource object van de kaart image resources
            overlayResource = new MemoryResource(GameData.sOverlayLocatie);
            overlayResource.Add(GameData.sOverlayFout);
            overlayResource.Add(GameData.sOverlayGoed);

            //Uri testURI = new Uri("Images/Overlays/Checkmark.png", UriKind.Relative);
            // BitmapImage testBitmap = new BitmapImage(testURI);

            ImageSource voorKant = overlayResource.Find(GameData.sOverlayGoed);

            feedbackCreate();
        }