AGB  ·  Datenschutz  ·  Impressum  







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

Labyrinth

Ein Thema von Sandro · begonnen am 30. Mär 2008 · letzter Beitrag vom 30. Mär 2008
Antwort Antwort
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.784 Beiträge
 
Delphi 10.4 Sydney
 
#1

Re: Labyrinth

  Alt 30. Mär 2008, 21:00
Hallo,

die Procedure nachLinks gehört nicht zur TSpielfeld.

Darum kracht es wenn Du in diese Procedure auf Bild.Canvas.Pixels zugreifst.
Die Procedure kennt Bild nicht.
Entweder Du packst die Procedure als Methode zu TSpielfeld oder
Du schreibst anstelle von Bild.Canvas.Picxels -> Spielfeld.Bild.Canvas.Pixels.

Grüße
Klaus

P.S.
Einigerma0en richtig formatiert schaut die Procedure so aus:
Delphi-Quellcode:
procedure nachlinks;
begin
if ball1.vx=0 then
  begin
     if Spielfeld.Bild.Canvas.Pixels[Round(ball1.x),Round(ball1.y+ball1.r+1)]=clblack then
       begin
          if (ball1.vx=0)and (ball1.vy>0) then
            begin
              ball1.vx:=5;
              ball1.vy:=0;
            end

          else
            if (ball1.vx=0)and (ball1.vy<0) then
              begin
                ball1.vx:=-5;
                ball1.vy:=0;
              end
            else
              if (ball1.vx<0)and (ball1.vy=0) then
                begin
                  ball1.vx:=0;
                  ball1.vy:=5;
                end
              else
                if (ball1.vx>0)and (ball1.vy=0) then
                  begin
                    ball1.vx:=0;
                    ball1.vy:=-5;
                  end
       end
  end;
if ball1.vy=0 then
  begin
    if spielfeld.Bild.Canvas.Pixels[(ball1.x+ball1.r+1),(ball1.y)] = clblack then
      begin
        if (ball1.vx=0)and (ball1.vy>0) then
          begin
            ball1.vx:=5;
            ball1.vy:=0;
          end
        else
          if (ball1.vx=0)and (ball1.vy<0) then
            begin
              ball1.vx:=-5;
              ball1.vy:=0;
            end
          else
            if (ball1.vx<0)and (ball1.vy=0) then
              begin
                ball1.vx:=0;
                ball1.vy:=5;
              end
            else
              if (ball1.vx>0)and (ball1.vy=0) then
                begin
                  ball1.vx:=0;
                  ball1.vy:=-5;
                end
      end
  end;
end;
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:54 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