Habt ihr eventuell in der Gamemode versehentlich die main-Funktion gelöscht?
Fügt das mal über OnGameModeInit() ein und versucht es nochmal:
main()
{}
Habt ihr eventuell in der Gamemode versehentlich die main-Funktion gelöscht?
Fügt das mal über OnGameModeInit() ein und versucht es nochmal:
main()
{}
So müsste es funktionieren, wenn du vorher über SetPVarInt(playerid,"Rang",XXX) einen Wert für den jeweiligen Spieler gesetzt hast. Für XXX musst du halt den Rang einsetzt, den du ihm geben willst.
Aber versuch es doch einfach mal, oder hat es nicht funktioniert wie du wolltest?
Das liegt daran, dass addfire mit mehreren Parametern gecoded wurde.
//Quellcode der AddFire Methode:
stock AddFire(Float:x, Float:y, Float:z, Health)//<<< das "Health fehlt dir als parameter...
{
[.....]
}
Du hast lediglich "Float:x, Float:y, Float:z" als Parameter angegeben, also die Koordinaten. Versuchs zum Beispiel mal so:
AddFire(1574.4224,-1890.8976,13.1592, 100);
Nee ich mein einfach, dass es meiner Meinung nach zu viel Arbeit ist, sowas mal kurz für irgendjemanden fremden zu machen^^
Ich kann dir gleich sagen, dass das bestimmt nix wird^^
Zock einfach auf gtaRL weiter, da gibts das alles schon
Achso und ich glaube nicht, dass dir das jemand mal kurz professionell macht (bzw. Überhaupt irgendwie macht), denn da steckt viel zu viel Arbeit drin^^ wie hast du dir das Speichern vorgestellt? MySQL?, Dini oder was? xD
Hey,
Ich hab vor paar Tagen mit Mysql angefangen und wollte jetzt eine automatische Zahlenschleife (nicht die auto_increment), die automatisch eine fehlende Zahl speichert.
Bsp.: ich habe in der spalte "ID" folgende Werte.
1,3,5.
Wenn ich nun ein weiteres spawne soll es dann os aussehen:
1,2,3,5.
wenn ich nochmal eins speichere so:
1,2,3,4,5
usw.
Es soll also nicht wie beim auto_increment, einfach immer eins dazu setzten, sondern die fehlende Zahl suchen und reinsetzen.
Momentan habe ich es so, aber er return immer nur null:
stock setcarID(max)
{
format(mysqlquery,sizeof(mysqlquery),"SELECT * FROM cars");
mysql_query(mysqlquery);
mysql_store_result();
if (mysql_num_rows() > 0)
{
while(mysql_fetch_row(mysqlresult)==1)
{
new temp;
for(new i=0; i<max; i++)
{
mysql_fetch_field("ID",mysqlfield); temp=strval(mysqlfield);
if(temp != i) return i;
}
}
}
else
{
return 0;
}
return 1;
}
Dieses Mysql-Plugin nutze ich, da kein anderes bei mir funkionierte:
http://forum.sa-mp.com/index.p…48182.0#post_OnMysqlQuery
MfG Martin08
ganz nach oben
forward life(playerid);
und dann halt das so machen^^
public life(playerid)
{
new Float:leben; GetPlayerHealth(playerid,leben); // Laut wiki musste das so machen ;) http://wiki.sa-mp.com/wiki/GetPlayerHealth
if(leben <= 45.0) return SetPlayerHealth(playerid,45); // außerdem kannste das entweder in Klammern setzten oder mit return aber nich einfach nichts
else return 1;
}
PS: Sagt dir der Name drifto was?
Hey ho Breadfishler^^
Seit kurzem hab ich mit Mysql begonnen.
Öffnen der Datenbank usw. ist kein Problem, auch kann ich Daten in Tabellen speichern.
Nur komischerweiße kann ich die Daten nicht auslesen, deswegen frage ich nun hier.
format(mysqlquery,sizeof(mysqlquery),"SELECT * FROM Users WHERE playerName = '%s'", PlayerName(playerid));
samp_mysql_query(mysqlquery);
samp_mysql_store_result();
if (samp_mysql_num_rows() > 0)
{
samp_mysql_fetch_row(mysqlresult);
samp_mysql_get_field("playerID", mysqlfield); playerID[playerid] = strval(mysqlfield);
samp_mysql_get_field("playerPassword", mysqlfield); playerPassword[playerid] = mysqlfield;
// genau hier crasht immer die samp-server.exe
//aber warum??
MfG Martin08
Hm in deinem Fall würde ich erstmal eher mit Dini und so zeugs anfangen.
Also das es die Daten erstmal in Files, im Scriptfiles Ordner speichert und daraus liest. Davon gibts massenhaft Tutorials und is für den Anfang eventuell doch besser, weil du mit dem Können dann selbstständig auf mysql weiterentwickeln kannst. Musst immer im Hinterkopf behalten: "Von Nichts kommt Nichts". Also am besten auch immer den Kopf benutzen und überlegen, da kommt man meistens auf gute Ideen und man findet auch eigene Lösungswege.
Naja so hab ich mich mehr oder weniger ein bisschen entwickelt und bin jez auch an DINI vorbei und will mit mysql anfangen, hab aber auch n Bug, leider
MfG Martin08
nee ich wills net^^
das haste sicherlich nich selbst gemacht, das is zu gleich, wie eins wo ich kenn, was eigentlich nich öffentlich is, aber ka genau.
Ich mein damit, dass du das nich einfach einfügen kannst und dann n Tacho hast oO
alter, das kenn ich oO woher hast du das?? btw. wennde es einfach nur iwie einfügst, geht das halt nich
Hi,
ich habe für unsere Community gtarl.de ein kleine Eventfilterscript gemacht.
Bei mir, also local, funkioniert alles wunderbar, nur auf dem Server der Community, d.h. mit der GameMode des Server gibt es irgendwie Probleme mit den Dialogen.
Eigentlich sollte es so sein, das ich ein Pickup betrete, und sich dadurch ein InputDialog öffnet, auf dass dann noch ein InputDialog folgt. Letztendlich kommt noch ein MSGDialog, was eigentlich egal ist, da es schon vorher zum Bug kommt.
Nun, auf dem RL-Server öffnet sich, durch betreten das erste Dialog. Dort geb ich jetzt meinen Text ein und drücke weiter. Eigentlich sollte sich dann das zweite Dialog öffnen, was es aber nicht tut. Man bleibt freezed usw.
Hier mal die etwas geänderten Codes (hab die Lösungen für das Event geändert)
#define Ende1 500 //hier hatte ich schon 1,2,3 aber ich dachte, dass es evnt. mit der Gamemode zusammenhängen könnte, die auch wahrscheinlich ihr dialoge auf 1,2,3 definiert haben.
#define Ende2 501
#define Ende3 502
if(pickupid == pende)
{
if(inside[playerid]==0)
{
ShowPlayerDialog(playerid, Ende1, DIALOG_STYLE_INPUT, "Der letzte Test","Addiere die fünf gefundenen Zahlen und gib das Ergebnis hier ein:","Bestätigen","Abbrechen");
TogglePlayerControllable(playerid,0);
inside[playerid]=1;
}
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == Ende1)
{
if(!response) {SendClientMessage(playerid, 0xC32D2EFF, "[Event] Abgebrochen"); TogglePlayerControllable(playerid,1); inside[playerid]=0; return 1;}
else
{
if(strval(inputtext) == 55)
{
ShowPlayerDialog(playerid, Ende2, DIALOG_STYLE_INPUT, "Das war richtig!","Gib nun das gefundene Wort ein, um die Schatzkammer zu öffnen.","Bestätigen", "Abbrechen");
}
else
{
new str[256];
format(str,sizeof(str),"Oh nein! Die Zahl ´%d´ ist nicht korrekt. Du wurdest wieder an den Anfang gebracht.",strval(inputtext));
SendClientMessage(playerid,0xFFF39DFF,str);
SetPlayerPos(playerid,45.644378, 1484.422485, 12.750000);
TogglePlayerControllable(playerid,1);
inside[playerid]=0;
}
}
}
if(dialogid == Ende2)
{
if(!response) {SendClientMessage(playerid, 0xC32D2EFF, "[Event] Abgebrochen"); TogglePlayerControllable(playerid,1);inside[playerid]=0; return 1;}
else
{
if(!strcmp("blutauge",inputtext))
{
ShowPlayerDialog(playerid, Ende3, DIALOG_STYLE_MSGBOX, "Geschafft!","Nach Klicken von ´Öffnen´ wird sich das Tor vor dir öffnen. Aber beeile dich, es schließt sich nach 7 Sekunden wieder.","Öffnen", "Abbrechen");
}
else
{
new str[256];
format(str,sizeof(str),"Oh nein! Das Wort ´%s´ ist nicht korrekt. Du wurdest wieder an den Anfang gebracht.",inputtext);
SendClientMessage(playerid,0xFFF39DFF,str);
SetPlayerPos(playerid,45.644378, 1484.422485, 12.750000);
TogglePlayerControllable(playerid,1);
inside[playerid]=0;
}
}
}
if(dialogid == Ende3)
{
if(!response) {SendClientMessage(playerid, 0xC32D2EFF, "[Event] Abgebrochen"); TogglePlayerControllable(playerid,1);inside[playerid]=0; return 1;}
else
{
MoveObject(Tor2,1256.837280, -2028.018188, 56.858845,1.5);
TogglePlayerControllable(playerid,1);
inside[playerid]=0;
Torpos2=1;
timer1 = SetTimer("Torfunktion",7000,1);
new Tag, Monat, Jahr, Minute, Stunde, Sekunde, Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,sizeof(Name));
getdate(Jahr, Monat, Tag);
gettime(Stunde,Minute,Sekunde);
printf("[Event] %s hat das Labyrinth Event am %02d.%02d.%d um %02d:%02d:%02d geschafft.",Name,Tag,Monat,Jahr,Stunde, Minute, Sekunde);
}
}
return 1;
}
wie schon gesagt, nachdem das Dialog vom Pickup gezeigt wurde, schließen sich die Dialoge und man bleibt freezed stehen.
Ich hoffe ihr wisst mehr als ich und könnt mir helfen xD^^
Großes Danke im vorraus
Martin08
EDIT: Ich wäre echt dankbar, wenn jemand ne Idee hätte. Ansonsten müsste ich das wieder ausbauen, was ich aber schade ums Event finden würde.
id -66 ist eine ziemlich tolle, da wirbeln die bäume aber umfallen tun seh net
kein problem.
bevor du mich "beleidigst" lern erst mal schreiben ;). Thema erledigt denke ich.
Nichts gefunden?
das ist das erste FS was dort angezeigt wird oO?!!
http://forum.sa-mp.de/wbb/inde…=DownloadDBData&dataID=32