AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials Delphi Neuer Artikel auf meiner HP: "Code-Design"
Tutorial durchsuchen
Ansicht
Themen-Optionen

Neuer Artikel auf meiner HP: "Code-Design"

Ein Tutorial von Luckie · begonnen am 25. Mai 2004 · letzter Beitrag vom 15. Mai 2018
 
mimi

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

Re: Neuer Artikel auf meiner HP: "Code-Design"

  Alt 20. Jul 2004, 20:34
was haltet ihr von diesem code(es ist aus meinem pac-man clone und ist in einer extern unit in einer eigenen klassse ausgelagert und die komponenten(DXDraw, DXTimer, DXListImage werden zurlaufzeit erstellt)
Code:
procedure TPACMan.DXDraw1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  i,index:Integer;
  k:array of TKI;
begin

  if ssLeft in Shift then begin
    if (x div mapS <= MapX) and (y div mapS <= MapY) then begin
      if NTyp = isStein then CreateItems((x div MapS),(y div MapS),nTyp,ntex);
      if NTyp = isKi then CreateKI( (x div mapS),(y div mapS),0,0,random(6)+3 );
      if NTYp = isPlayer then begin
        Player.x:=x div mapS;
        Player.y:=y div mapS;
      end;
    end;
  end;

  if ssRight in Shift then begin
    if NTYp = isStein then begin
      Map[x div MapS,y div MapS].Typ:=None;
      Map[x div MapS,y div MapS].Tex:=0;
    end;

    if NTYp = isKI then begin
      index:=0;

      for i:=0 to HIGH(ki) do begin
        if (ki[i].x = x div mapX) and (ki[i].y = y div mapY) then begin
          index:=i;
          break;
        end;
      end;

      for i:=0 to HIGH(KI) do begin
        if i <> index then begin
          SetLength(k,high(k)+2);
          k[HIGH(K)]:=ki[i];
        end;
      end;

      SetLength(ki,0);
      SetLength(ki,high(k));

      for i:=0 to HIGH(KI) do begin
        ki[i]:=k[i];
      end;

    end;
  end;
       
end;
ich finde so einen code viel übersichtlich als, wenn man z.b.
Code:
for i:=0 to high(ki) do
begin
...
end;
schreiben würde
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  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 00:58 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