Support und Leistung ist unser Ziel ![]()
Wir wollen nicht alles in die Länge ziehen wie andere Sponsoring Unternehmen.
Und es ist immerwieder schön zu lesen, das es einige gibt die diesen Service zu schätzen wissen
Support und Leistung ist unser Ziel ![]()
Wir wollen nicht alles in die Länge ziehen wie andere Sponsoring Unternehmen.
Und es ist immerwieder schön zu lesen, das es einige gibt die diesen Service zu schätzen wissen
Morgen zusammen
Ich bekomme einen Serverchash durch mein OnDialogResponse hook, und bin am rätseln wiso
Laut Chrashdetekt liegt es an der CallLocalFunction hier mal der code:
#include <a_samp>
#include <DT_Dialog>
new HilfeText[][128]=
{
{"BlubBlubBlub"}
};
forward H_OnPlayerCommandText(playerid, cmdtext[]);
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp("/hilfe", cmdtext, true)||!strcmp("/help", cmdtext, true))
{
ShowPlayerDialog(playerid,diaHilfe,DIALOG_STYLE_LIST,"Hilfe","Allgemeine Hilfe\nAuto Hilfe\nJob Hilfe\nFraktions Hilfe\nAdmin Hilfe","Wählen","Abbruch");
return CallLocalFunction("H_OnPlayerCommandText","ds",playerid, cmdtext);
}
return CallLocalFunction("H_OnPlayerCommandText","ds",playerid, cmdtext);
}
forward H_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == diaHilfe && response)
{
switch(listitem)
{
case 0:
ShowPlayerDialog(playerid,diaAllgHilfe,DIALOG_STYLE_MSGBOX,"Allgemeine Hilfe",HilfeText[0],"Ok","Zurück");
}
}
if(dialogid == diaAllgHilfe && !response)
ShowPlayerDialog(playerid,diaHilfe,DIALOG_STYLE_LIST,"Hilfe","Allgemeine Hilfe\nAuto Hilfe\nJob Hilfe\nFraktions Hilfe\nAdmin Hilfe","Wählen","Abbruch");
return CallLocalFunction("H_OnDialogResponse","dddds",playerid, dialogid, response, listitem, inputtext);
}
#if defined _ALS_OnPlayerCommandText
#undef OnPlayerCommandText
#else
#define _ALS_OnPlayerCommandText
#endif
#define OnPlayerCommandText H_OnPlayerCommandText
#if defined _ALS_OnDialogResponse
#undef OnDialogResponse
#else
#define _ALS_OnDialogResponse
#endif
#define OnDialogResponse H_OnDialogResponse
die dialoginclude schaut so aus:
Ich weiß nicht wiso der server dadurch chrasht und hoffe das einer von euch eine idee dazu hat
Du musst die include auch in den pawno/include ordner ersetzen mit der neuen, denn der Fehler ist behoben
Das geht per OnPlayerExitvehicle einfach checkpoints da löschen und die variablen zurücksetzen
Lad dir bitte die include neu runter
Da war ein fehler meiner seite aus^^
Den fehler mit den Kennzeichen auslesen habe ich behoben^^
So sollte es klappen, es kann sein das in meiner include nen fehler ist da schau ich mal eben nach
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
new vehid = GetPlayerVehicleID(playerid) , str[128];
SetVehicleNumberPlate(vehid, "MeineMom");
format(str,sizeof(str),"Kennzeichen: %s",GetVehicleNumberPlate(vehid));
TextDrawSetString(TextdrawKennzeichen,str);
TextDrawShowForPlayer(playerid, TextdrawKennzeichen);
SendClientMessage(playerid,Weiss,"Um den Motor zu starten gibst du bitte {00EBFF} /motor {FFFFFF} ein");
}
else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
{
TextDrawHideForPlayer(playerid, TextdrawKennzeichen);
}
return 1;
}
Bei OnDialogResponse sowas machen:
if(dialogid == DIALOG_HARVEST)
{
if(!response)return RemovePlayerFromVehicle(playerid),SendClientMessage(playerid,-1,"Gut dann halt nicht");
//hier dann der rest rein
}
Zeig mal den command von den Navi
Beim auslesen der daten des spielers macht es ja auch kein sinn eine for , while , do-while oder sonst eine schleifenform zu verwenden.
genau das meine ich doch
Guck dir mal den ersten Post an das Muster da wo er einen Spieler Selectet, nutzt er die while schleife
Klar ich hab das auch ne lange zeit so gemacht nur kommen mehrere spieler gleichzeitig drauf dann hängt sich der mysql_fetch_row auf
wenn du nicht kompetent genug dazu bist eine while schleife zu verwenden
![]()
Wozu brauch ich für einen Spieler beim laden eine While schleife?
Ich seh da kein sinn
Ja achte aber auf der reihenfolge:
MinX MinY MaxX MaxY
Wenn dummheit weh tun würde ...
Dann müsstest du ja jeden Morgen schmerzen haben wenn du in den Spiegel schaust..
Lass solch dummen Posts hier weg!
Weitere Frage: die Koordinate?? Wozu steh die?
Die sind dafür da, das das Gebiet angezeigt wird
es ist ja zurzeit auf 100 gestellt^^
Aber wenn ich die Slotzahl auch auf 10 mache ist der enormhoch das mich rätselhaft macht
dann liegt es wohl an deinen Admin/perso abfragen
Versuch mal das
if(newkeys & 320)//ist die definirung von KEY_LOOK_BEHIND
if(newkeys & 4096)//ist die definirung von KEY_ANALOG_DOWN
Sollte eigendlich ohne Probleme funktionieren
- Spongebob
- Scrubs
- Family Guy
- American Dad
- Southpark
- Cobra 11
- Simpsons
Du hast einfach den Namen zu früh geholt
Ich hab den command etwas angepasst, da ein string vollkommen ausreicht
dcmd_makeleader(playerid,params[]) //Adminbefehl
{
new pID, fID, string[128], aname[MAX_PLAYER_NAME], name[MAX_PLAYER_NAME],frakname[50];
if(SpielerInfo[playerid][pPerso] != 1) return 1;
if(SpielerInfo[playerid][pAdmin] < 4) return 1;
if(sscanf(params,"ud",pID,fID)) return SendClientMessage(playerid,GRAU,"Verwendung: /makeleader [ID] [Fraktions-ID] | Gebe '/frakids' für die Fraktions-ID's ein!");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,ROT,"Dieser Spieler wurde nicht gefunden!");
if(SpielerInfo[pID][pFraktion] == fID && SpielerInfo[pID][pLeader] == 1) return SendClientMessage(playerid,ROT,"Der Spieler ist bereits Leader dieser Fraktion!");
if(fID < 1 || fID > 11) return SendClientMessage(playerid,ROT,"Ungültige Angabe!");
GetPlayerName(playerid,aname,sizeof(aname));
GetPlayerName(pID,name,sizeof(name));
switch(fID)
{
case 1:{frakname=frakname1;}
case 2:{frakname=frakname2;}
case 3:{frakname=frakname3;}
case 4:{frakname=frakname4;}
case 5:{frakname=frakname5;}
case 6:{frakname=frakname6;}
case 7:{frakname=frakname7;}
case 8:{frakname=frakname8;}
case 9:{frakname=frakname9;}
case 10:{frakname=frakname10;}
case 11:{frakname=frakname11;}
}
SpielerInfo[pID][pFraktion] = fID;
SpielerInfo[pID][pLeader] = 1;
SpielerInfo[pID][pFrakRang] = 1;
format(string,sizeof(string),"Du hast %s zum Leader der Fraktion '%s' gemacht!",name,frakname);
SendClientMessage(playerid,GELB,string);
format(string,sizeof(string),"%s hat %s zum Leader der Fraktion '%s' gemacht!",aname,name,frakname);
SendAdminMessage(PINK,string);
format(string,sizeof(string),"%s hat dich zum Leader der Fraktion '%s' gemacht!",aname,frakname);
SendClientMessage(pID,GELB,string);
return SavePlayer(pID);
}
Du müsstest trotzdem playerid angeben in den define das kannst du ja einfach abändern
lösch den gesammten sock dann geht es auch nicht nur die Zeile...
//nachtrag
den gesammten stock meine ich