Ok,danke
Wie muss ich das hier machen?
ocmd:fhelp(playerid,params[])
{
new string[128];
format(string,sizeof(string),""COLO" FraktionsBefehle:\n");
if(SpielerInfo[playerid][pFraktion]==1)
ShowPlayerDialog(playerid,DIALOG_FHELP,DIALOG_STYLE_MSGBOX,""COLO"Fraktionshilfe",string,"OK","");
return 1;
}
Beiträge von [PeL]Smiley
-
-
Ok und wie mache ich beim ocmd:wanted ein Limit von Wantedeingabe rein?
Also wenn er 70 WPS geben will soll kommen: "Maximal 69 Wantes!" -
So sind meine beiden Sachen:
stock LoadPlayer(playerid)
{
if(IsPlayerConnected(playerid))
{
SpielerInfo[playerid][ pLevel] = mysql_GetInt(Tabelle_Spieler, "Level","Name", GetName(playerid));
SpielerInfo[playerid][ pAdminlevel] = mysql_GetInt(Tabelle_Spieler, "Adminlevel","Name", GetName(playerid));
SpielerInfo[playerid][ pSkin] = mysql_GetInt(Tabelle_Spieler, "Skin","Name", GetName(playerid));
SpielerInfo[playerid][ pGeld] = mysql_GetInt(Tabelle_Spieler, "Geld","Name", GetName(playerid));
SpielerInfo[playerid][ pBan] = mysql_GetInt(Tabelle_Spieler, "Ban","Name", GetName(playerid));
SpielerInfo[playerid][ pLeader] = mysql_GetInt(Tabelle_Spieler, "Leader","Name", GetName(playerid));
SpielerInfo[playerid][ pRang] = mysql_GetInt(Tabelle_Spieler, "Rang","Name", GetName(playerid));
SpielerInfo[playerid][ pFraktion] = mysql_GetInt(Tabelle_Spieler, "Fraktion","Name", GetName(playerid));
SpielerInfo[playerid][ pBan] = mysql_GetInt(Tabelle_Spieler, "Ban","Name", GetName(playerid));
SpielerInfo[playerid][ pPerso] = mysql_GetInt(Tabelle_Spieler, "Perso","Name", GetName(playerid));
SpielerInfo[playerid][ pWarns] = mysql_GetInt(Tabelle_Spieler, "Warns","Name", GetName(playerid));
SpielerInfo[playerid][ pTimeBan] = mysql_GetInt(Tabelle_Spieler, "TimeBan","Name", GetName(playerid));
SpielerInfo[playerid][ pMute] = mysql_GetInt(Tabelle_Spieler, "Mutetime","Name", GetName(playerid));
SpielerInfo[playerid][ pReportAktiv] = mysql_GetInt(Tabelle_Spieler, "ReportAktiv","Name", GetName(playerid));
SpielerInfo[playerid][ pWanteds] = mysql_GetInt(Tabelle_Spieler, "Wanteds","Name", GetName(playerid));
format(SpielerInfo[playerid][pRegDate],32,"%s", mysql_GetString(Tabelle_Spieler, "Registrierungsdatum","Name", GetName(playerid)));
//Sachen werden gegeben
GivePlayerMoney(playerid, SpielerInfo[playerid][ pGeld ]);
SetPlayerScore (playerid, SpielerInfo[playerid][ pLevel ]);
SetPlayerSkin (playerid, SpielerInfo[playerid][ pSkin ]);
}
return 1;
}stock SavePlayer(playerid)
{
if(IsPlayerConnected(playerid))
{
SpielerInfo[playerid][ pGeld ] = GetPlayerMoney(playerid);
SpielerInfo[playerid][ pLevel ] = GetPlayerScore(playerid);
SpielerInfo[playerid][ pSkin ] = GetPlayerSkin(playerid);
mysql_SetInt(Tabelle_Spieler,"Level",SpielerInfo[playerid][pLevel],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Adminlevel",SpielerInfo[playerid][pAdminlevel],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Skin",SpielerInfo[playerid][pSkin],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Geld",SpielerInfo[playerid][pGeld],"Name",GetName(playerid));
mysql_SetString(Tabelle_Spieler,"Registrierungsdatum",SpielerInfo[playerid][ pRegDate], "Name", GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Leader",SpielerInfo[playerid][pLeader],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Fraktion",SpielerInfo[playerid][pFraktion],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Rang",SpielerInfo[playerid][pRang],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Perso",SpielerInfo[playerid][pPerso],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Ban",SpielerInfo[playerid][pBan],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"TimeBan",SpielerInfo[playerid][pTimeBan],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Mutetime",SpielerInfo[playerid][pMute],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Warns",SpielerInfo[playerid][pWarns],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"ReportAktiv",SpielerInfo[playerid][pReportAktiv],"Name",GetName(playerid));
mysql_SetInt(Tabelle_Spieler,"Wanteds",SpielerInfo[playerid][pWanteds],"Name",GetName(playerid));
}
return 1;
} -
Ok danke,wie kann ich nun jetzt die Wanteds auch bei jedem Connect von dem jenigen Spieler wieder geben? also die TExtdraws automatisch anzeigen lassen?
-
Danke,das funktioniert jetzt.
Und wie kann ich eine gewisse Anzahl nur an Wanteds erlauben? Also man sollte nur 69 Wanteds erhalten können. auch wenn man z.B einmal 50 Wanteds gibt und einmal 30 es sollte dann automatisch auf 69 gesetzt werden.
Und wenn ich /Wanted id Anzahl Grund eingebe funktioniert es aber wenn ich dann /wanted 0 5 test eingebe dann kommt:
"<<Gesuchter:Smiley Wantedpunkte: 5 Gesamt: 0 Reporter: Smiley Grund:test>>"
Jeffry -
Fail,danke schön
Liegt wahrscheinlich daran das ich müde bin haha -
Log:
[00:55:22] playerid: 0 pReportAktiv: -1
[00:55:26] playerid: 0 pReportAktiv: 1
Die Nachricht kommt:
if(SpielerInfo[playerid][pReportAktiv] == 1)return SendClientMessage(playerid, Rot, "** Du hast bereits einen aktiven Support!"); -
Ok,das mit dem Textdraw klappt jetzt,allerdings,werden die Wanteds nicht dazu addiert. Sondern von 5 Auf 20 gesetzt wenn ich /wanted id 20 grund setze.
Unteranderem das hier:
Bei Gesamt: Sollte auch die gesamte Anzahl der Wanteds stehen. -
Jetzt kann ich Tickets schreiben und löschen,allerdings kann ich das Ticket nicht annehmen:
ocmd:areport(playerid,params[])
{
if(!IsPlayerConnected(playerid))return 1;
//if(SpielerInfo[playerid][pAdminlevel] == 0)return SendClientMessage(playerid, Rot, ERROR_ADMIN);
strdel(DialogString, 0, sizeof(DialogString));
for(new i=0;i<MAX_REPORTS;i++)
{
if(gSupport[i][ticketCreated])
{
format(DialogString, sizeof(DialogString), "%sSpieler: %s (ID: %d) - Thema: %s\n", DialogString, GetName(gSupport[i][ticketSender]), gSupport[i][ticketSender], GetTicketName(gSupport[i][ticketType]));
}
else
{
strcat(DialogString, " - - - - - - - - - -\n");
}
}
ShowPlayerDialog(playerid, DIALOG_AREPORT, DIALOG_STYLE_LIST, "Report System - Liste", DialogString, "Annehmen", "Abbrechen");
return 1;
}
if(dialogid==DIALOG_AREPORT)
{
if(response)
{
printf("playerid: %d pReportAktiv: %d", playerid, SpielerInfo[playerid][pReportAktiv]);
new i = listitem, string[128];
if(!gSupport[i][ticketCreated])return SendClientMessage(playerid, Rot, "** Das Ticket ist leer, wähle ein anderes aus!");
if(gSupport[i][ticketAdmin] != INVALID_PLAYER_ID)return SendClientMessage(playerid, Rot, "** Das Ticket wird bereits bearbeitet.");
if(SpielerInfo[playerid][pReportAktiv] == 1)return SendClientMessage(playerid, Rot, "** Du hast bereits einen aktiven Support!");
if(gSupport[i][ticketType] == 4)
{
format(string, sizeof(string), "* Deine Anfrage zur Einweisung wurde von %s angenommen.", GetName(playerid));
SendClientMessage(gSupport[i][ticketSender], Rot, string);
SendClientMessage(gSupport[i][ticketSender], Rot, "* Er wird sich schnellstmöglich um dich kümmern.");
format(string, sizeof(string), "* Du hast die Einweisungsanfrage von %s (ID: %d) angenommen. Teleportiere dich zu ihm und helfe ihm!", GetName(gSupport[i][ticketSender]), gSupport[i][ticketSender]);
SendClientMessage(playerid, Rot, string);
SpielerInfo[playerid][pReportAktiv] = 0;
SpielerInfo[gSupport[i][ticketSender]][pReportAktiv] = 0;
gSupport[i][ticketSender] = INVALID_PLAYER_ID;
gSupport[i][ticketAdmin] = INVALID_PLAYER_ID;
strdel(gSupport[i][ticketMessage], 0, 90);
gSupport[i][ticketType] = 0;
gSupport[i][ticketCreated] = false;
gEinweisung--;
UpdateReports();
return 1;
}
else if(gSupport[i][ticketType] == 1)
{
format(string, sizeof(string), "* Dein Ticket (%s) wurde von %s angenommen.", GetTicketName(gSupport[i][ticketType]), GetName(playerid));
SendClientMessage(gSupport[i][ticketSender], Rot, string);
format(string, sizeof(string), "* Wenn du ein "COLW"!"COLG" vor deinen Text schreibst, kannst du mit %s schreiben.", GetName(playerid));
SendClientMessage(gSupport[i][ticketSender], Rot, string);
SpielerInfo[playerid][pReportAktiv] = 1;
gSupport[i][ticketAdmin] = playerid;
format(string, sizeof(string), "* Ticket von %s (ID: %d): %s", GetName(gSupport[i][ticketSender]), gSupport[i][ticketSender], gSupport[i][ticketMessage]);
SendClientMessage(playerid, Rot, string);
SendClientMessage(playerid, Rot, "* Schreibe nun mit ihm, indem du ein "COLW"!"COLG" vor den Text setzt.");
return 1;
}
else if(gSupport[i][ticketType] == 3)
{
format(string, sizeof(string), "* Dein Ticket (%s) wurde von %s angenommen.", GetTicketName(gSupport[i][ticketType]), GetName(playerid));
SendClientMessage(gSupport[i][ticketSender], Rot, string);
format(string, sizeof(string), "* Wenn du ein "COLW"!"COLG" vor deinen Text schreibst, kannst du mit %s schreiben.", GetName(playerid));
SendClientMessage(gSupport[i][ticketSender], Rot, string);
SpielerInfo[playerid][pReportAktiv] = 1;
gSupport[i][ticketAdmin] = playerid;
format(string, sizeof(string), "* Ticket von %s (ID: %d): %s", GetName(gSupport[i][ticketSender]), gSupport[i][ticketSender], gSupport[i][ticketMessage]);
SendClientMessage(playerid, Rot, string);
SendClientMessage(playerid, Rot, "* Schreibe nun mit ihm, indem du ein "COLW"!"COLG" vor den Text setzt.");
return 1;
}
}
} -
Der zeigt allerdings immernoch nicht die Wanted's an.
Also das Textdraw -
Allerdings werden die Wanteds immernoch nicht angezeigt
Ganzer code:
http://pastebin.com/vZdQrVrW -
Das steht dann im Server_Log:
[23:20:29] playerid: 0 pReportAktiv: -1
[23:20:31] Level: 6
[23:20:31] i: 0 | ticketCreated: 1
[23:20:31] 65535 == 0
[23:20:31] i: 1 | ticketCreated: 0
[23:20:31] i: 2 | ticketCreated: 0
[23:20:31] i: 3 | ticketCreated: 0
[23:20:31] i: 4 | ticketCreated: 0
[23:20:31] i: 5 | ticketCreated: 0
[23:20:31] i: 6 | ticketCreated: 0
[23:20:31] i: 7 | ticketCreated: 0
[23:20:31] i: 8 | ticketCreated: 0
[23:20:31] i: 9 | ticketCreated: 0
[23:20:31] i: 10 | ticketCreated: 0
[23:20:31] i: 11 | ticketCreated: 0
[23:20:31] i: 12 | ticketCreated: 0
[23:20:31] i: 13 | ticketCreated: 0
[23:20:31] i: 14 | ticketCreated: 0
[23:20:31] i: 15 | ticketCreated: 0
[23:20:31] i: 16 | ticketCreated: 0
[23:20:31] i: 17 | ticketCreated: 0
[23:20:31] i: 18 | ticketCreated: 0
[23:20:31] i: 19 | ticketCreated: 0 -
Ich habe auch /creport eingegeben und dann kommt im Chat:
"Irgendetwas ging schief" -
Erstmal danke und wie macht man das mit der Spielervariable?
-
Das steht im Log:
[00:26:48] playerid: 0 pReportAktiv: -1
[00:26:52] playerid: 0 pReportAktiv: 1 -
Irgendwie funktioniert bei dem Wantedsystem nicht viel
haha
Wenn ich Wanteds vergebe,kommt trotzdem noch kein Textdraw.
Bei Gesamt: steht immer 0
Das gesamte Wantedsystem:
http://pastebin.com/wsbkcmY6 -
Was ist jetzt hierdran falsch?
ocmd:wanted(playerid,params[])
{
new string[128], pID, wantedlevel,reason[64];
if(sscanf(params, "ids", pID, wantedlevel,reason))return SendClientMessage(playerid, Rot, "Benutze: /wanted [ID] [Wanteds] [Grund]");
if(IsPlayerConnected(pID))
{
if(!IsPlayerNPC(pID))
{
format(string,sizeof(string),"<<Gesuchter:%s Wantedpunkte: %d Gesamt: %d Reporter: %s Grund:%s>>",GetName(pID),wantedlevel,wantedlevel(pID),GetName(playerid),reason);//Die Zeile
SendClientMessageToAll(Rot,string);
return 1;
}else return SendClientMessage(playerid,Rot,"Du kannst einem NPC keine Wanteds geben.");
}else return SendClientMessage(playerid,Rot,"Spieler ist nicht connected.");
}
Fehler:
C:\Users\kevin\Desktop\server\gamemodes\self2.pwn(5148) : error 012: invalid function call, not a valid address
C:\Users\kevin\Desktop\server\gamemodes\self2.pwn(5148) : warning 215: expression has no effect
C:\Users\kevin\Desktop\server\gamemodes\self2.pwn(5148) : error 001: expected token: ";", but found ")"
C:\Users\kevin\Desktop\server\gamemodes\self2.pwn(5148) : error 029: invalid expression, assumed zero
C:\Users\kevin\Desktop\server\gamemodes\self2.pwn(5148) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
-
-
Wenn ich Ingame /creport eingebe dann kommt keine Meldung garnichts
//Push -
Das steht dann in der Sever_Log:
[13:15:30] Number of vehicle models: 0
[13:15:54] Incoming connection: 127.0.0.1:59780
[13:15:55] [join] Smiley has joined the server (0:127.0.0.1)
[13:16:08]
[13:16:08] Du gibst Smiley [ID: 0] 20 Wanted(s).
[13:16:08] miley