Einzelnen Beitrag anzeigen

mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#129

Re: [Spiel] Flos DrawBall [neue Version, 02.04. / 08.06.]

  Alt 6. Jul 2007, 13:42
Wenn ich dein Level Formate unterstützt benötige ich noch die geschwindigkeits Variablen und soweiter.
Damit das Level auch auf geht.
(kannst du mir ja per PM senden) also ich meine jetzt wie du den Ball genau bewegst.
ich mache das im Moment so:
Delphi-Quellcode:
procedure TGame.DrawBall;
var
  i,ox,oy:Integer;
begin
  for i:=0 to ObjListe.count-1 do begin
    if ObjListe[i] is TGameObjBall then begin
      with TGameObjBall(ObjListe[i]) do begin
        ox:=x; oy:=y;
        Collision(i,getobj(i));
        if XSpeed > 0 then begin
          if r = -1 then begin
            if xRechts = True then
              x:=x+xSpeed // Nach Rechts
            else
              x:=x-xSpeed; // Nach Lings

            if xOben = True then
              y:=y+xSpeed // Nach Unten
            else
              y:=y-xSpeed; // Nach Oben
          end
          else begin
            if r = PfeilUnten then y:=y+xSpeedBottom;
            if r = PfeilOben then y:=y-xSpeedTop;
            if r = PfeilLings then x:=x-xSpeedLeft;
            if r = PfeilRechts then x:=x+xSpeedRight;
          end;
          BitBlt(canvas.Handle,ox,oy,ox+w,oy+w,backup.canvas.Handle,0,0,SRCCOPY);
          MoveBall(ox,oy);
          BitBlt(canvas.Handle,x,y,x+w,y+w,buffer.canvas.Handle,x,y,SRCCOPY);
        end;
      end;
    end;
  end;
ich hoffe du wirst darauß schlau.
Wenn die geschwindigkeit auf 0 ist, also XSpeed dann habe ich Probleme mit der Rand Erkennung.

Und beim Level Format müsste ich noch wissen,wie du die Datei aufgebaut hast.

Ich bin Im Moment so weit. das ich nur noch Türen hinzufügen müsste. Und erste richtige Levels(natürlich).

Edit:

Es liegt nicht direkt am Timer. sonder es liegt am zeichnen wegen der 100% CPU auslastung:
es muss ja ständig ein neues Bild auf den Bildschirm gebracht werden, das benötigt halt Zeit.

bei neuern Rechnern bzw. Grafikkarten auch kein Problem, die habe eigene Prosseroren.
Meine jedoch leider nicht. Darum zeichne ich es etwas anders. So habe ich ca 5-10% Cpu Auslastung.

Ich denke da müsste Igel noch etwas Optimieren.....
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat