2 registered members (AndrewAMD, ozgur),
1,415
guests, and 7
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Daten aus Datei auslesen
#313919
03/04/10 14:52
03/04/10 14:52
|
Joined: Nov 2006
Posts: 116
benija
OP
Member
|
OP
Member
Joined: Nov 2006
Posts: 116
|
Hallo, ich habe folgendes Problem: Ich habe eine Datei, in welche ich den aktuellen Spielernamen und die Zeit einspreichern kann. Wenn sich ein anderer Spieler anmeldet, dann ändert sich logischerweise der spielername. Nun möchte ich aus dieser txt Datei die Daten auslesen un diese auf dem Bildschirm für den Spieler sichtbar machen. meine Idee war wiefolg:
dCheckLesen = file_open_read("Highscore.txt");
if(dCheckLesen == 0)
{
//Kein Datenzugriff
}
else
{
while(i<=10)
{
file_str_readto(dCheckLesen,HighscoreLesen, ",",15);
highs_array[i]=HighscoreLesen;
i++;
wait(1);
}
//name1=highs_array[0];
}
kann ich dies so machen? außerdem weiß ich nicht, wie ich das Array mit den Daten darin ejtzt ausgeben kann.
|
|
|
Re: Daten aus Datei auslesen
[Re: benija]
#313925
03/04/10 15:11
03/04/10 15:11
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Ist eigentlich nicht so schwer. Hier einmal mein Highscore Script (done by Slin):
function Highscore_FileWrite
{
var i = 0;
var filehandle;
filehandle = file_open_write("Highscore.hs");
while(i < 20)
{
file_str_write(filehandle,Highscore_txt.string[i]);
file_str_write(filehandle,",");
file_var_write(filehandle,Highscorepoints_var[i]);
i += 1;
}
file_close(filehandle);
}
function Highscore_FileRead
{
var i = 0;
var filehandle_read;
filehandle_read = file_open_read("Highscore.hs");
if(!filehandle_read){return(-1);}
while(i < 20)
{
file_str_read(filehandle_read,Highscore_txt.string[i]);
Highscorepoints_var[i]=file_var_read(filehandle_read);
i += 1;
}
file_close(filehandle_read);
}
function HighscorePointCheck()
{
var i = 19;
while(i > 0 && Punkte > HighscorePoints_var[i])
{
i -= 1;
}
i += 1;
if(i < 20)
{
HighscorePoints_var[i] = Punkte;
str_cpy(Highscore_txt.string[i]," ");
inkey(Highscore_txt.string[i]);
Highscore_FileWrite();
}
}
Wenn du ne Online HS machen möchtest, also mit mySQL, kannste mich gerne fragen, hab das damals auch schon des öfteren gemacht. Gruß Sebastian
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Re: Daten aus Datei auslesen
[Re: benija]
#313935
03/04/10 16:09
03/04/10 16:09
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Von welchem Fehler sprichst du? Du schreibst im ersten Post nichtmal, das es einen Fehler gibt, sondern erklärst nur was gemacht wird und fragst wie du die Variablen wieder ausgeben kannst...
cYa Sebastian
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Re: Daten aus Datei auslesen
[Re: rvL_eXile]
#313936
03/04/10 16:14
03/04/10 16:14
|
Joined: Nov 2006
Posts: 116
benija
OP
Member
|
OP
Member
Joined: Nov 2006
Posts: 116
|
Ok sorry, mein fehler... dads problem ist, dass ich mit meiner Variante keine Ausgabe auf dem Bildschirm bekomme. wenn ich alles ohne while schleife mache also so:
file_str_read(dCheckLesen,HighscoreLesen);
und HighscoreLesen wiefolgt ausgebe:
TEXT* ende_text =
{
layer = 1;
pos_x = 500;
pos_y = 200;
string ("Spiel erfolgreich beendet","du wurdest zur Highscore hinzugefügt!",HighscoreLesen);
flags = CENTER_X | TRANSLUCENT | SHOW;
font = arial_font;
dann wird alles bis zum ersten "," ausgegeben. Sobald ich die While schleife einbaue und versuche ein Array zu verwenden, wird nichts angezeigt. Den Code habe ich ja bereits gepostet. die Ausgabe sieht so aus:
TEXT* ende_text =
{
layer = 1;
pos_x = 500;
pos_y = 200;
string ("Spiel erfolgreich beendet","du wurdest zur Highscore hinzugefügt!",name1);
flags = CENTER_X | TRANSLUCENT | SHOW;
font = arial_font;
}
|
|
|
Re: Daten aus Datei auslesen
[Re: benija]
#313937
03/04/10 16:16
03/04/10 16:16
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Schau dir mal meine Highscore_Read Function an, diese benutze ich zum Auslesen... Das hoch zählen der Var "i" wird dazu genutzt, das dass Array mit allen Werten gefüllt ist...
cYa Sebastian
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Re: Daten aus Datei auslesen
[Re: rvL_eXile]
#313938
03/04/10 16:19
03/04/10 16:19
|
Joined: Nov 2006
Posts: 116
benija
OP
Member
|
OP
Member
Joined: Nov 2006
Posts: 116
|
okay...eine kleinigkeit verstehe ich nicht:
file_str_read(filehandle_read,Highscore_txt.string[i]);
was bedeutet das .string[i]?
|
|
|
Re: Daten aus Datei auslesen
[Re: benija]
#313940
03/04/10 16:21
03/04/10 16:21
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Das es sich um einen string handelt der mit den werten von "i" (dem Array) gefüllt ist.
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Moderated by mk_1, Perro, rayp, Realspawn, Rei_Ayanami, rvL_eXile, Spirit, Superku, Tobias, TSG_Torsten, VeT
|