hi
danke für die antworten
@Chodot ich arbeite zurzeit nicht direkt an JumpManiac da das Team sehr instabil und unmotiviert ist bzw. die jetzigen Mitglieder einfach nicht für die bevorstehenden Arbeiten geeignet sind
Aber ich möchte selbst lernen wie man solche Spiele erstellt um ein ähnliches Spiel zu designen und wie es aussieht habe ich noch einen sehr sehr weiten Weg vor mir.
In diesem Codeabschnitt:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
function Box( x, y, w, h, c )
{
this.x = x;
this.y = y;
this.w = w;
this.h = h;
this.c = c;
this.drawThePlayer = drawPlayer;
this.createABox = drawBox;
this.drawAFewBoxes = drawBoxes;
this.movePlayer = Move;
this.checkTheCollision = CD;
}
|
habe ich die jeweiligen Funktionen drawPlayer, drawBox usw. an die Funktion Box übergeben das habe ich in einem Tutorial gesehen und dachte so wäre es richtig
Andernfalls hat es nie richtig funktioniert wenn ich diese Funktionen einzeln erstellt habe von daher dachte ich das es so richtig ist.
Damit wollte ich bezwecken das die Variable x,y,w,h,c in den jeweiligen Funktionen immer mit erstellt werden. War anscheinend ein Denkfehler meinerseits
beim zweiten:
|
Quellcode
|
1
2
3
4
5
6
7
|
//DrawBoxes()
Wall[i];//Ob man das auf diese Weise machen kann weiß ich nicht
...
if ( Wall.x == 180 )//Was soll das bringen?
{
Wall.x = 0;
}
|
Hier habe ich Wall durch den Index
angesprochen und die jeweilige Box gerendert.
Hierbei habe ich die x Position immer um 50 erhöht. Wenn es aber immer höher wird dann wird die Box irgendwann außerhalb der Kamera gerendert deswegen habe ich es wenn es den Wert 180 erreicht hat
wieder auf 0 zurück gesetzt damit es wieder neu anfängt zu zählen.
und in diesem Abschnitt:
|
Quellcode
|
1
2
3
4
5
6
7
|
function Move()
{
if ( down == true && up == false )
{
Player.y += msdown;
} if ( CD( Player, Wall[i] ) == true )//Welchen Wert hat die Variable 'i' in diesem Augenblick?
...
|
wollte ich den Index ansprechen um die Kollision zu überprüfen. Sozusagen welche Box vom Spieler "berührt" wird so das die Kollision genau dann stattfindet aber leider klappt das nicht so wie ich das möchte.
Weiter oben in dem Kommentar wurde mir bereits gesagt das der Wert i auf 0 bzw. auf 2 ist. Nur weiß ich nicht genau wie ich das ändern soll.
Danke nochmal für die Antworten ich werde mal versuchen das ganze zu überschreiben und wenn es dann funktioniert sag ich euch bescheid