lieber community, ein letzter ruf an dich
ich habe die animation von 2 bildern nach rechts hinbekommen, das läuft soweit.
|
C#-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
if (Keyboard.GetState().IsKeyUp(Keys.D))
{
block5 = false;
}
else if (Keyboard.GetState().IsKeyDown(Keys.D))
{
if (!block5)
{
block5 = true;
spriteBatch.Draw(allPic[1], allPic_rect[1], Color.White);
allPic_rect[0] = allPic_rect[1];
allPic_rect[1].X++;
}
}
|
// Das läuft prima soweit, jetzt will ich zwar genau das gleiche mit den Bildern die nach links gehen machen, aber ich habe ja wie im quellcode allPic_rect[1] den allPic_rect[1] hinzugewiesen, heisst, er nimmt bei der
bewegung quasi beide bilder mit, jedoch ist das mit den bildern die sich nach links bewegen sollen, nicht so möglich, denn dann müsste es ja heißen, laut quellcode:
"allPic_rect[0] = allPic_rect[1] = allPic_rect[2] = allPic_rect[3];
und das wäre ziemlich suboptimal.
deswegen meine frage an euch, wie könnte ich es hinbekommen, das alle Bilder sozusagen ein GesamtFrame ergeben, sodass, wenn ich A drücke, die Bildanimation nach links verläuft und wenn ich D drücke, die Bildanimation nach rechts läuft. denn sobald z.b A gedrückt wird, muss die rechtsanimation quasi "versteckt" werden.
ihr wisst schon, wenn ich in Pokemon nach rechts gemacht habe, dann waren die anderen Bilder ja weg, wenn ich links gedrückt habe, dann waren die rechtsbilder weg und nur die linksanimation war dann zusehen.
Ich hoffe, ich habe mich ansatzweise verständlich ausgedrückt
.
allPic_rect[] sind die rectangle-arrays
[2] und [3] sind die nach links laufenden bilder...
[0] und [1] sind die nach rechtslaufenden bilder...