AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Kreaturensimulation: diverse Probleme mit Create und Class
Thema durchsuchen
Ansicht
Themen-Optionen

Kreaturensimulation: diverse Probleme mit Create und Class

Ein Thema von vsilverlord · begonnen am 13. Sep 2008 · letzter Beitrag vom 13. Sep 2008
Antwort Antwort
Benutzerbild von vsilverlord
vsilverlord

Registriert seit: 7. Jan 2008
Ort: Baden Württemberg- Hohenlohekreis
174 Beiträge
 
RAD-Studio 2009 Arc
 
#1

Kreaturensimulation: diverse Probleme mit Create und Class

  Alt 13. Sep 2008, 18:42
Ich bin dabei eine Simulation programmieren.
Ich habe folgende eigene Klasse: 8)
Delphi-Quellcode:
TTier = class
   public
    Fortbewegung: currency;
    Verteidigung: currency;
    Angriff: currency;
    Position: Tpoint;
end;
Ich möchte beliebig viele Tiere erzeugen. Bisher mache ich es so:
Delphi-Quellcode:
var
...
neuesTier: TTier;
...
implementation
...
procedure TForm1.Button1Click(Sender: TObject);
begin
neuestier:= ttier.create;
neuestier.fortbewegung:=50;
neuestier.verteidigung:=250;
neuestier.angriff:=800;
neuestier.position.x:=500;
neuestier.position.y:=500;
end;
nun möchte ich alle tiere aufeinmal bewegen lassen, move ist eine funktion mit den parametern tpoint und currency, das den Punkt in eine Richtung mit dem Skalarbetrag von currency wandern lässt:
Delphi-Quellcode:
for i:=0 to componentcount-1 do
begin
if components[i]is ttier then
begin
ttier(components[i]).position:=move(ttier(components[i]).position,(ttier(components[i]).fortbewegung)
end
end;
mit der forschleife wollte ich alle vorhandenen Komponenten durchlaufen und somit alle schon erzeugten Tiere bewegen. Wo liegt der Fehler?
Außerdem habe ich noch eine Frage: Ist eine eigene Klasse die richtige Wahl, wenn ich ungefähr 10000 Tiere erzeugen will?
Volker
~beware
Wizards First Rule:
People are stupid; given proper motivation, almost anyone will believe almost anything. Because people are stupid, they will believe a lie because they want to believe it’s true, or because they are afraid it might be true
  Mit Zitat antworten Zitat
Benutzerbild von freak4fun
freak4fun

Registriert seit: 22. Sep 2004
Ort: Hannover
1.807 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 18:50
Ich habe sowas mit einer TObjectList gelöst. Das =objectlist]hier hat mir sehr geholfen.
Christian
IT: Schließen Sie bitte das Fenster. User: Die Tür auch?
i++; // zaehler i um 1 erhoehen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 18:51
Verwalte die Instanzen besser in einem array oder noch besser einer Liste
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von vsilverlord
vsilverlord

Registriert seit: 7. Jan 2008
Ort: Baden Württemberg- Hohenlohekreis
174 Beiträge
 
RAD-Studio 2009 Arc
 
#4

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 19:44
tobjectlist ist eine wirklich gute idee. Nimmt die mehr Speicher wie ein array ein?
liste:array[0..10000]of ttier
Volker
~beware
Wizards First Rule:
People are stupid; given proper motivation, almost anyone will believe almost anything. Because people are stupid, they will believe a lie because they want to believe it’s true, or because they are afraid it might be true
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 19:46
Wenn du weniger als 100001 hast auf jeden Fall.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von freak4fun
freak4fun

Registriert seit: 22. Sep 2004
Ort: Hannover
1.807 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 23:05
Mit dem Speicherverbrauch kenne ich mich nicht aus, aber die Handhabung ist sehr angenehm. Ich würde die ObjectList nun nicht mehr gegen ein Array eintauschen wollen.
Christian
IT: Schließen Sie bitte das Fenster. User: Die Tür auch?
i++; // zaehler i um 1 erhoehen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Kreaturensimulation: diverse Probleme mit Create und Cla

  Alt 13. Sep 2008, 23:06
Dann nimm zumindest einen dynamischen Array
Markus Kinzler
  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 13:16 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