hallo Iedereen,
ik ben mezelf c# aan het leren en heb mezelf aan het project Tetris gewaagd.
Dit doe ik met een 2D matrix voor het speelveld en 2D matrix voor de blokken.
De blokken worden dan in het matrix geplaatst van het speelveld en nu komt de besturing.
Ik kan ze links, rechts en naar beneden laten gaan ( met forloop die mijn speelveldarray vanachter naar voor doorloopt
als deze dan op een 1stoot verzet men deze van plek) Mijn probleem is dat hij niet wil stoppen en buiten de array gaat.
Heb al een aantal dingen probeert zoals een coordinaatX waar mijn blok wordt in te voeren mee te geven dat deze niet groter of kleiner mag zijn dan de maximumwaarde van de linker of rechter kant.
maar dan plaatst hij nullen waar het niet mag(vanwege de clearing) en vallen mijn blokken door...
weet iemand een andere manier om deze blokken te verplaatsen in zijn geheel?
alvast bedankt
ik ben mezelf c# aan het leren en heb mezelf aan het project Tetris gewaagd.
Dit doe ik met een 2D matrix voor het speelveld en 2D matrix voor de blokken.
De blokken worden dan in het matrix geplaatst van het speelveld en nu komt de besturing.
Ik kan ze links, rechts en naar beneden laten gaan ( met forloop die mijn speelveldarray vanachter naar voor doorloopt
als deze dan op een 1stoot verzet men deze van plek) Mijn probleem is dat hij niet wil stoppen en buiten de array gaat.
Heb al een aantal dingen probeert zoals een coordinaatX waar mijn blok wordt in te voeren mee te geven dat deze niet groter of kleiner mag zijn dan de maximumwaarde van de linker of rechter kant.
maar dan plaatst hij nullen waar het niet mag(vanwege de clearing) en vallen mijn blokken door...
weet iemand een andere manier om deze blokken te verplaatsen in zijn geheel?
Code:
public void BlokMove() // om mijn blokken naar beneden te plaatsen met timertick
{
for (kolom = 19; kolom >= 0; kolom--)
{
for (rij = 9; rij >= 0; rij--)
{
if (mSpeelveld.mBlokjesArray[kolom, rij] == 1 && mSpeelveld.mBlokjesArray[kolom, rij] != mSpeelveld.mBlokjesArray[maxY, rij])// als je in kolom of rij een 1 tegenkomt en kolom is verschillend van maxX
{
mSpeelveld.mBlokjesArray[kolom + 1, rij] = 1; // wordt rij eronder 1
mSpeelveld.mBlokjesArray[kolom, rij] = 0;// waar 1 stond wordt 0
}
}
}
}
alvast bedankt
