Autor Beitrag
chaoslion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 45


Delphi 2k6 Prof,C,C#,Delphi
BeitragVerfasst: Di 16.01.07 00:44 
Hey


also folgendes, ich hab ein Waffenskript wie folgt:

zb: mp.txt:
ausblenden Quelltext
1:
2:
3:
4:
5:
waffe {
 feuerrate = 20;
 schaden = 15;
 nachlade_zeit = 2000;
}


was würdet ihr als effektiver abstempeln, jedes mal wenn ich die waffe wechsle, diesen skript ausführen oder
am programmstart ein array von allen waffen, mit möglichen einstellungen festlegen?!
Dragonclaw
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 196

Windows Vista
Delphi 7 Prof.
BeitragVerfasst: Di 16.01.07 00:58 
Du kannst auch eine Klasse "Waffe" machen mit dem Eigenschaften für feuerrate,schaden,nachlade_zeit etc machen. Dann initialisierts du die einmal am Anfang und kannst immer darauf zu greifen.

z.B. hast du 5 Waffen, dann machst du dir ein "Waffenarsenal" ein Array der Klasse "Waffe". Dann beim Form.Create schreibst du einmal die WaffenEigentschaften : Waffenarsenal[1].feuerrate := 20; etc. Dann kannst auch sehr leicht beim Waffenwechseln die eigenschaften wechseln die die Waffe hat, einfach nur die Pos im Waffenarsenal ändern.

Allerdings hab ich nicht wirklich ne Ahnung wie man das jetzt GENAU in die Praxis implementiert, ist halt nur thoretisch, sollte aber einfacher und auch schneller gehen als, die Daten aus ner txt Datei zu lesen, außerdem ist das Ganze dann nicht so anfällig für Manipulationsversuche

Hoffe du hast ne Ahnung was ich meine
chaoslion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 45


Delphi 2k6 Prof,C,C#,Delphi
BeitragVerfasst: Di 16.01.07 01:20 
ok, hast recht das mit der manipulation stimmt, ich fand diese text datei lösung schön, weil man dadurch später nicht mehr viel im quelltext ändern muss wenn überhaupt und kann einfach veränderungen in der datei machen. danke für den tipp mit dem array, so hatte ich es zu erst geplant :D mfG lion
Coder
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1383
Erhaltene Danke: 1

WinXP
D2005 PE
BeitragVerfasst: Di 16.01.07 01:48 
Du könntest z.B. ein Array mit Rekords verwenden
www.dsdt.info/grundl...he/komdatentypen.php (unten)

Wenn du das nicht schon vor hattest. :)

MfG
Flamefire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Di 16.01.07 08:08 
Bsp:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
type
    twaffe=record
                 feuerrate,schaden,nachladezeit:Integer;
    end;
var arsenal:array[1..20of twaffe;
procedure int();
var i:Integer;
begin
for i:=1 to 20 do begin
   arsenal[i].feuerate:=20;
   ...
end;
end;

dann kannste noch ne globale variable machen, in der du die aktuelle waffe (index) speicherst (1=Mp, 2=Pistol...)
die daten für die waffen kannste aus ner datei einlesen und dann in der schleife oben entsprechend setzen...
ABER: dann kann jeder die ändern...das ist möglichwerweise nicht so was du willst, oder?
freak4fun
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 604
Erhaltene Danke: 4

Win 7 Pro
VS 2013 Express, Delphi, C#, PHP, Java
BeitragVerfasst: Di 16.01.07 09:31 
user profile iconchaoslion hat folgendes geschrieben:
... ich fand diese text datei lösung schön, weil man dadurch später nicht mehr viel im quelltext ändern muss wenn überhaupt und kann einfach veränderungen in der datei machen.


Kannst du doch trotzdem machen. Speicher die Werte für die detailangaben in einer Ini-Datei und bei Starten lädst du die Werte. ;)

MfG
freak

_________________
"Ich werde auf GAR KEINEN Fall…!" - "Keks?" - "Okay, ich tu's."
i++; // zaehler i um 1 erhoehen