Favorite Reallife sucht weiterhin einen weiteren loyalen, erfahrenen Mapper.
Meldet euch einfach per PN bei mir, falls niemand im Teamspeak zu erreichen ist.
Beiträge von [FR]Metro
-
-
Beispiel für Laden:
//OnGameModeInit
mysql_function_query(SQL_Con,"SELECT * FROM fraktion ",true,"FraktionPublic ","");//Irgendwo
forward FraktionPublic();
public FraktionPublic()
{
new rows, fields, result[32];
cache_get_data(rows,fields);
if(rows)
{
for(new i=0; i<rows; i++)
{
cache_get_field_content(i,"fraktionsname",result),//String
format(fInfo[i][FraktionName],24,result),
cache_get_field_content(i,"SpawnX",result),//Float
fInfo[i][Spawn_X]= floatstr(result),
cache_get_field_content(i,"Interior",result),//Int.
fInfo[i][fInterior] = strval(result);
}
}
return 1;
}Beispiel für Speicherung
stock SaveFraktion()
{
new Query[224];
for(new i; i<75; i++)
{
//Ich empfehle dir ein Bool zu benutzen und abzufragen ob es erstellt wurde
format(Query,sizeof(Query),"UPDATE fraktion SET fraktionsname='%s',SpawnX='%f',Interior='%i' WHERE fraktionsname='%s'",
fInfo[i][FraktionName],fInfo[i][Spawn_X],fInfo[i][fInterior],fInfo[i][FraktionName]);
mysql_function_query(dbhandle,Query,false,"","");
}
}Ich hoffe du machst nicht nur Copy&Pase, schau dir am besten den Code an, und präge dir die Weise zum Laden und Speichern ein. Ich habe dir mal die wichtigsten 3 Variablen angegeben. Ich hoffe es hilft dir weiter. Wenn du weitere Hilfe brauchst, kannst du dich wieder hier melden, oder per PN.
PS: Für das richtig Einrücken hatte ich keine Lust.
-
@Oreo:
ID 19320 Das ist ein normaler Kürbis, leider ohne Gesicht für Halloween. -
Guck dir mal den "format" im "stock" an..
Ich dachte, er hat ihn einfach nicht zu ende geschrieben.--> Du musst die Variablen angeben und auch mysql_function_query nutzen.
//e:
Wenn du nicht weißt, wie man es speichert, schau dir am besten dieses Tutorial an:
[ SCRIPTING ] MySQL R7(+) - Cachefunktionen & Threaded Querys [UPDATED] -
Ich weiß nicht genau wo das Problem liegt, du beschreibst nämlich nicht wirklich eins.
Wäre nett wenn du dein Problem beschreibst, denn immer wenn du schreibst: "Das Problem ist ...." kommt anschließend einfach eine Aussage
und keine Schilderung des Problems. Wenn du dich wieder meldest, helfe ich dir liebend gerne weiter. -
-
Ich komme am besten mit dem Editor von Zamaroth klar. Er hat außerdem ein Update von einem User aus dem englischen Forum bekommen, damit man Objecte anzeigen kann, Textdraws gleich Selectable machen kann und außerdem kann man sie auch nun sofort in PlayerTextdraws importieren.
-
-
Super Design Elmo, gefällt mir gut, jedoch finde ich den Übergang von Backround zu dem Header viel zu schnell, es wirkt leicht abgeschnitten. Ansonsten gefällt es mir echt gut.
-
Schlauer wäre es natürlich alle ID´s beim einsteigen in Variablen zu speichern, aber For schleifen gehen natürlich auch.
-
Fehlende Plugins können der Grund sein, das der Server nicht geht, am besten solltest du die Serverlog posten.
-
Ich schätze du meinst das:
Es müsste im Script höhst wahrscheinlich ein Define sein, der so aussieht:
#define MAX_PLAYERS Anzahl
Statt der Anzahl steht doch eine Zahl, beispielsweise eine 50, diese musst du erhöhen. -
Ein Stock kannst du als Vereinfachung beim scripten sehen, er hilft dir, das du nicht so viel Schreibarbeit hast.
Beispiel:
Ich möchte meinen Spieler speichern, und habe einen ewig langen Query, der ungefähr 50 Zeilen lang ist.
Ich kann überall diese 50 Zeilen schreiben, oder ich kann Zeilen sparen und es mir leicht machen und den Code einen Stock packen.
Das würde so aussehen:
stock BeliebigerName(Parameter, z.B. playerid)
{
//Meine 50 Zeilen Code
return 1;
}
Nun kann ich unter OnPlayerDisconecct einfach schreiben: BeliebigerName(playerid); --> jetzt werden meine 50 Zeilen ausgeführt. -
Ähhhm, danke, du hast halt noch vergessen ob der Spieler im Vehicle (Heli) ist, weil dann kann er ja höher als MC sein. Und dann mus man noch beachten, wenn der Spieler ausm Heli springt... Ok; das ist seeehr viel ARBEITUnd wenn der Spieler esc drückt bleibt er in der Luft.. wie kann man abfragen ob der spieler das spiel pausiert hat??
Nein, wenn er eine Geh-Animation ausführt, kann er wohl kaum in einem Helikopter sitzen.
Achtung!
Ich habe vergessen zu sagen, abzufragen, ob die Person in einem Interior ist.Empfehlung:
Außerdem würde ich dir empfehlen, in deinem Anticheat-Timer die Position zu speichern und abzufragen ob es zu letzten gespeicherten Position eine große Differenz gibt. -
Eine kleine Absicherung wäre, wenn du die Höhe des MC nimmst, und abfragst ob die Position des Spielers darüber ist. Dann fragst du noch ab ob die CarSurfingID invalid ist und zu guter letzt fragst du ab, ob die Person langsam -, normal -, schnell geht (Natürlich mit Animationen). Es ist natürlich auch möglich mit Map Andreas, aber ich höre sehr oft, das es sehr viele Ressoursen verbraucht, vor allem, wenn du es in einem Spielerdefinieren Timer machst, des alle 5-10 Sekunden aufgerufen wird.
Wenn du irgendwie hilfe brauchst, bei Anticheat System, kannst du dich per PN melden. (Musst aber zuerst Freundschaftsanfrage schicken)
-
@Music4You:
Was für eine unnütze Schreibarbeit? Den Inhalt des Timers, fügt man eben bei einem Stock unten ein, es wäre sinnvoller und nicht Ressoursenlastig, es ist total paradox was du hier schreibst. -
Variable für geld nutzen, timer laufen lassen, getplayermoney benutzen, fragen obs über 0 ist, kicken bannen was auch immer.
Für was sinnlos Ressoursen mit einem Timer fressen? Man kann das ganze in einen Stock packen und es hooken und nach dem Geld geben abfragen, ob es den selben Wert hat. -
Wenn du sie in periodischen Reihenfolge zeigen willst, würde ich dir empfehlen eine Variable bei jedem Connecten hoch zuzählen und anschließen mit Switch & Case die Variable abzufragen und die Camera anzuzeigen.
Oder du machst es mit der Random Funktion, das ist einfacher.Hier findest du ein tolles Beispiel für Randoms:
http://wiki.sa-mp.com/wiki/Random
+
http://wiki.sa-mp.com/wiki/Control_Structures (Switch & Case) -
Nein kann man leider nicht, sonst würde jeder Spiele von anderen ausleihen und alle Spieleentwickler würden weniger Gewinn machen.
-
Wir suchen einen weiteren Mapper, außerdem ist noch Mert_Coleman (Designer) und MapCodex (Mapper) dem Team beigetreten.
(Die Script-Arbeiten laufen echt gut, wir arbeiten tagtäglich an unserem Script)