AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Pacman

Ein Thema von TheSodomizer666 · begonnen am 15. Jun 2009 · letzter Beitrag vom 16. Jun 2009
 
TheSodomizer666

Registriert seit: 15. Mai 2009
2 Beiträge
 
#1

Pacman

  Alt 15. Jun 2009, 17:06
Hallo erstmal..bin relativ neu hier (wie man sieht...^^") und find gut,dass es dieses Forum gibt.

Ich habe ein Problem bei meinem Pacman Spiel. Die Geister sollen sich automatisch bewegen (klappt,jedoch mit schlechten ergebnissen,weil sie sich fast nur auf einer stelle bewegen, mit random),aber sie sollten erkennen,wenn sie auf eine wand treffen. Ich habe dazu ein 2D-Array benutzt.Wäre gut,wenn ihr mir weiterhelfen könntet.
hier ein Ausschnitt aus dem Code für die Bewegung der Geister:

Code:
 procedure TForm1.Timer3Timer(Sender: TObject);
var gfeld : TPoint;
begin
 case geist1[3] of
  1:
    begin
    gfeld.X:=round((geist1[1]-10+15)/30)-1;    //[1]=x koordinate ;
    gfeld.Y:=round((geist1[2]+15)/30)-1;       //[2]=y koordinate
    if (welt[gfeld.X,gfeld.Y]<>'1') and (welt[gfeld.X,gfeld.Y]<>'4') then
    dec(geist1[1]);
    if (gfeld.X=1) and (gfeld.Y=9) then inc(geist1[1],16*30);
    end;
  2:
    begin
    gfeld.X:=round((geist1[1]+15)/30)-1;
    gfeld.Y:=round((geist1[2]-10+15)/30)-1;
    if (welt[gfeld.X,gfeld.Y]<>'1') and (welt[gfeld.X,gfeld.Y]<>'4') then
    dec(geist1[2]);
    end;
  3:
    begin
    gfeld.X:=round((geist1[1]+10+15)/30)-1;
    gfeld.Y:=round((geist1[2]+15)/30)-1;
    if (welt[gfeld.X,gfeld.Y]<>'1') and (welt[gfeld.X,gfeld.Y]<>'4') then
    inc(geist1[1]);
    if (gfeld.X=19) and (gfeld.Y=9) then dec(geist1[1],16*30);
    end;
  4:
     begin
    gfeld.X:=round((geist1[1]+15)/30)-1;
    gfeld.Y:=round((geist1[2]+10+15)/30)-1;
    if (welt[gfeld.X,gfeld.Y]<>'1') and (welt[gfeld.X,gfeld.Y]<>'4') then
    inc(geist1[2]);
    end;
 end;
 gfeld.X:=round((geist1[1]+15)/30)-1;      // Orientierung
 gfeld.Y:=round((geist1[2]+15)/30)-1;
 geist1[3]:=random(4);



danke schonmal im Vorraus .
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz