die map ist sieht mal richtig geil aus!!!
10/10
Beiträge von mari0_DE
-
-
coole Idee 8/10
Palmen direkt neben der Landebahn??? -
wo kann man die jetzt downloaden?? weil beide links kaput sind.
die Lite und die normale beide links gehen nicht. -
einfach sufu "login"
-
jo, also ist das Projekt erstmal abgeschlossen. hat noch jemand was zu sagen??
-
Es sind #defines xD
-
hmm nagut dann ist es halt nur so zum spaß entstanden... *traurig reingug*" mein erste [inc] gleich nach hinten losgegangen"
-
Es ist auf jedenfall schneller Als Dini aber obs schneller als was anderes ist da kann man sich drüber streiten.
Ich finde es ist einfacher als GF.
wiso sollte dini schneller sein??
-
sieht aber aus wie Vista xD.
such mach dei Inc nochmal raus und gug ob das gleiche Passiert oder Google dir mal ne andere Version von m...
-
dini Öffnet den File list solange drin rum bis es den Key gefunden hat und schlisst ihn wieder.wenn man dan nochmal dini_ ... macht öffnet er es list und schlisst wieder usw...
easy_ini macht es wie in fast jedem GF er Öffnet list alles raus und schlisst ihn weider. -
Der Code ist mit Fehlern übersät wenn ich ehrlich bin
WriteFile(file);
{Viel einfacher ist es eigentlich auch nicht & ziemlich unlogisch zusammengesetzt , die formatierung
????
Das erste ja ist mir garnicht aufgefallen das hatte ich noch vom Testen so drin danke
format(file,60,"%s.ini",PlayerName(playerid));Zitat
Viel einfacher ist es eigentlich auch nicht & ziemlich unlogisch zusammengesetzt , die formatierung
Schlüssel=Wertsollte der Code selber übernehmen, gehört eigentlich dazu
Wenn man das macht wäre das ganz auch nicht so schnell!! und das soll easy_ini eigentlich sein.!! -
in dem anderen auto darf kein Fahrer sein! Beifahrer schon aber kein Fahrer (glaub ich)
-
du fägst ja :
if(GetPlayerScore(playerid)==20){GivePlayerMoney(playerid,700); GameTextForPlayer(playerid, "~r~+700$", 3000, 4); return 1;}
aber wenn du nicht nur ==20 haben willst dann musst du so machen:
if(GetPlayerScore(playerid)<30){GivePlayerMoney(playerid,700); GameTextForPlayer(playerid, "~r~+700$", 3000, 4); return 1;} //um level 20-29 abzuprüfen -
jo, danke Für die Rückmeldung ist sonst aber ganz gut oder?? (gemacht für faule Leute)
-
du hast das so:
if(GetPlayerScore(playerid)==20)return GivePlayerMoney(playerid,700); GameTextForPlayer(playerid, "~r~+700$", 3000, 4);
Aber richtig ist das so:
if(GetPlayerScore(playerid)==20){GivePlayerMoney(playerid,700); GameTextForPlayer(playerid, "~r~+700$", 3000, 4); return 1;} -
Vorwort:- Ich habe mir mal gedacht das wenn man schon mal eine Vereinfachung Für die Speicherung von Accs macht das man die dann auch vorstellen / Erklären muss.
Die Funktionen:
- Funktionen bei 0.2
native PwWrong(file[],Key[],&savepasswort[],passwort[]);//key = Key1
native ClosePw();
native ReadFilePw();
native ..
native WriteFile(file[]);
native StopWrite();
native ReadFile(file[]);
native StopRead();
native ..
native Save(Key[],params);//key = Key2
native SaveInt(Key[],initger);//key = Key1
native SaveFloat(Key[],Float);//key = Key1
native SaveString(Key[],string[]);//key = Key1
native ..
native LoadInt(Key[],Int);//key = Key1
native LoadFloat(Key[],Float);//key = Key1
native LoadString(Key[],String[]);//key = Key1file[] = Fileadresse die man Öffnen will zB: "user/USERNAME.ini"
Key1 = wie bei dini auch der Key zB: "Geld"
Key2 = wie bei dem Herkömmlichen GF Speichersystem zB: "Geld=%d\n" oder "Passwort=%s\n" oder "Spawnx=%.1f\n"
params[] = die variable die man einspeichern will.(aber immer mit der richtigen Key2 verwenden!!)
&savepasswort[] = die variable in der man das Userpasswort speichern will.
passwort[] = die variable die der User eingegeben hat um sich Einzuloggen.
Anwendungsbeispiel:
- Beispiel Für OnPlayerLogin(playerid,password[]):
public OnPlayerLogin(playerid,passwort[])
{
new file[60];
format(file,60,"%s.ini",PlayerName(playerid));
PwWrong(file,"PW",PlayerInfo[playerid][pPasswort],passwort);//Hiermit list man das Passwort, schreibt es in einen String und Überprüft ob es richtig ist.
{//In diese Klammern kommt dann das rein Was passieren soll wen das Passwort falsch ist.
Kick(playerid);
return 1;
}
ReadFilePw();//Dies Funktion kann man nur benutzten wenn man vorher PwWrong(); benutzt hat!!!! (man öffnet wie bei ReadFile(file[]); den file.)
{
key = ini_GetKey(Data);//<------Wichtig!! (ansonsten wird nichts gelesen.)
LoadString("PW", PlayerInfo[playerid][pPasswort]);//man läd einen String in PlayerInfo[playerid][pPasswort](kann natürlich beliebig geändert werden!!)
LoadFloat("Spawnx", PlayerInfo[playerid][pSpawnx]);//man läd eine Float(Kommazahl) in PlayerInfo[playerid][pSpawnx](kann natürlich beliebig geändert werden!!)
LoadInt("Level", PlayerInfo[playerid][pLevel]);//man läd einen Int(Zahl) in PlayerInfo[playerid][pLevel](kann natürlich beliebig geändert
}
StopRead();//schlisst den File wieder!!
return 1;
} - Beispiel Für OnPlayerRegister(playerid,password[])oder auch PlayerUpdate(playerid):
public PlayerUpdate(playerid)
{
new file[60];
format(file,60,"%s.ini",PlayerName(playerid));
WriteFile(file);//Öffnet den File zum reinschreiben!
{
SaveString("PW", password);//<------ wichtig bei OnPlayerRegister!
SaveString("PW", PlayerInfo[playerid][pPasswort]);//Speichert den Variablen String PlayerInfo[playerid][pPasswort] in den File.
SaveFloat("Spawnx", PlayerInfo[playerid][pSpawnx]);//Speichert die Variable Float PlayerInfo[playerid][pSpawnx] in den File.
SaveInt("Level", PlayerInfo[playerid][pLevel]);//Speichert die Variable Float PlayerInfo[playerid][pSpawnx] in den File.
// oder:
Save("PW=%s\n", PlayerInfo[playerid][pPasswort]);//wichtig bei Save(); ist das der Key mit "=%* \n" geschriben wird!! * = je nach dem welche Variable man einspeichern will.
Save("Spawnx=%.1f\n", PlayerInfo[playerid][pSpawnx]);
Save("Level=%d", PlayerInfo[playerid][pLevel]);
//oder auch mixen ist egal
}
StopWrite();//schlisst den File wieder!!
return 1;
}
Bitte beachtet das man nicht OnPlayerUpdate benutzt um Acc's zu Speichern!!
Hier ein Post dazu: Godfather - onplayerupdate - massiv Performance steigern! unbedingt LESEN !easy_ini hat folgende vorteile:
- easy_ini ist genauso schnell in der Ausführung wie das herkömmliche(GF) Speichern in ini
- esay_ini ist einfach und schnell Einsetzbar. (Man muss nur einmal file einsetzen.)
easy_ini hat folgende nachteile: man hat die gleichen nachteile wie bei einem herkömlichen Speicher system(bei GF)- Man muss immer alle gleichzeitig einspeichern
Download:
Die Funktion PlayerName(playerid); :
Spoiler anzeigen
stock PlayerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
return name;
}
Fragen Anregungen?? bitte per PN an mich. -
noch nicht!
-
new string[256];
format(string, sizeof(string), "Innenraum %d: %d$\nInnenraum %d: %d$\nInnenraum %d: %d$\nInnenraum %d: %d$\nInnenraum %d: %d$\nInnenraum %d: %d$\n", Interiors[0][IDs], Interiors[0][Kaufpreis],Interiors[1][IDs], Interiors[1][Kaufpreis],Interiors[2][IDs], Interiors[2][Kaufpreis],Interiors[3][IDs], Interiors[3][Kaufpreis],Interiors[4][IDs], Interiors[4][Kaufpreis],Interiors[5][IDs], Interiors[5][Kaufpreis],);
ShowPlayerDialog(playerid, DialogInt, DIALOG_STYLE_LIST, "Innenraum Ansicht", string, "Ansehen", "Abbrechen");
das waren jetzt nur 6 aber man kann erweitern auf 13 oder mehr musst nur sehen das string[] groß genug ist! -
Hier die Seite http://de.iv-multiplayer.com/ivmp/
-
Komplet bitte EntFernen