Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Raster Prob bei Snake (https://www.delphipraxis.net/12046-raster-prob-bei-snake.html)

Predator 19. Nov 2003 13:06


Raster Prob bei Snake
 
hi ich hab ein Snake clone gecodet, doch die Schlange geht nie genau über die Banane, sondern immer ein bissel daneben.

Kann mir jemand sagen, bzw. code posten wie ich ein vernünftiges Raster für Schlange und Banane erstellen kann ?

danke.

Giantics 19. Nov 2003 13:41

Re: Raster Prob bei Snake
 
Du musst beim Positionieren deiner Schlange oder der Banane die Koordinaten erst "gittergerecht" machen.
Entweder damit:
Delphi-Quellcode:
function GetGridCoord(Value:Integer):Integer;
begin
  Result:= Trunc(((Value+(GridSize/2))/GridSize))*GridSize ;
end;
Oder mit dieser leicht schnelleren;-) Version:
Delphi-Quellcode:
function GetGridCoord(Value:Integer):Integer;
begin
  asm
    add EAX,5
    mov CL,GridSize
    div CL
    mul CL
    //add EAX,1                // noch eins dazu
    mov Result,EAX
  end;
end;
Die globale Variable GridSize sollte vom Typ Byte sein und enthält die Gittergröße (z.B. 10).
Also sieht das quasi später so aus:
Banane.X:=GetGridKoord(irgendwasX);
Banane.Y:=GetGridKoord(irgendwasY);

Predator 19. Nov 2003 14:14

Re: Raster Prob bei Snake
 
Liste der Anhänge anzeigen (Anzahl: 1)
hi ich weiß net wie du das meinst,

ich hab den cod ehier mal angehängt mit deinen ändnerungen wie ich sie verstanden habe, aber das geht irgendwie net.

Kannst du dann gleich auch das Prob lösen, warum die ersten Teil der Schlange kleiner sind als der letzte Teil ?

danke.

Giantics 19. Nov 2003 14:34

Re: Raster Prob bei Snake
 
Ich guck mirs mal an :coder:

Giantics 19. Nov 2003 14:52

Re: Raster Prob bei Snake
 
Liste der Anhänge anzeigen (Anzahl: 1)
So, ich denk mal jetzt isses so, wie du es wolltest. :-D

Predator 19. Nov 2003 15:41

Re: Raster Prob bei Snake
 
jippii

danke danke.

Dich trag ich auch in meine BestList ein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz