Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

10.02.2018, 16:32

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 :P

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 ^^

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

12

10.02.2018, 17:12

Nun, wenn du über einen Array iterieren willst, was fehlt da? Auch das wurde dir bereits gesagt. ;)
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]