Hallo Leute
Gabe ein Problem Das Report System bugt rum. Die Zuordnung mit den Spielern die den Report geschrieben haben stimmt nicht.
Z.b Es geht ein Report von Spieler A ein, Ich mach "/reports" , Klick
auf die Katigorie wähl den User aus und im Chat steht net der Name des
Spielers sondern z.b "[BOT]Zugbot schrieb"
Heißt das mit der zuordnung etwas nicht ordnungsgemäß funktioniert. Kann mir da einer helfen
Code
COMMAND:reports(playerid,params[])
{
#pragma unused params
if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,GRAU,"Du bist kein "#SERVERTAG" Teammitglied./Du hast nicht den jeweiligen Adminrang.");
if(Spieler[playerid][pAtReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
if(Spieler[playerid][AmUmkleiden] != 0)return 1;
for(new sm=1;sm<MAX_SMARKETS;sm++)
{
if(SmarkInfo[sm][screatet] == 1)
{
for(new i=0;i<sizeof(sBuyInfo);i++)
{
if(IsPlayerInRangeOfPoint(playerid,25.0,sBuyInfo[i][sbuyx],sBuyInfo[i][sbuyy],sBuyInfo[i][sbuyz]) && GetPlayerVirtualWorld(playerid) == sm)
{
switch(Spieler[playerid][pAdmin])
{
case -1:
{
TextDrawShowForPlayer(playerid,Reportdraw[4]);
}
case 1:
{
TextDrawShowForPlayer(playerid,Reportdraw[0]);
TextDrawShowForPlayer(playerid,Reportdraw[1]);
}
case 2,3,4:
{
TextDrawShowForPlayer(playerid,Reportdraw[0]);
TextDrawShowForPlayer(playerid,Reportdraw[1]);
TextDrawShowForPlayer(playerid,Reportdraw[2]);
}
case 5,6:
{
TextDrawShowForPlayer(playerid,Reportdraw[0]);
TextDrawShowForPlayer(playerid,Reportdraw[1]);
TextDrawShowForPlayer(playerid,Reportdraw[2]);
TextDrawShowForPlayer(playerid,Reportdraw[3]);
}
case 7:
{
for(new ir=0;ir<sizeof(Reportdraw);ir++)
{
TextDrawShowForPlayer(playerid,Reportdraw[ir]);
}
}
}
TogglePlayerControllable(playerid,1);
PlayerTextDrawHide(playerid,BUYSMARKTWEAPONdraw[playerid][0]);
PlayerTextDrawHide(playerid,BUYSMARKTWEAPONdraw[playerid][1]);
PlayerTextDrawSetString(playerid,INFOdraw[playerid][0],"~b~Taste N:~n~~w~beliebigen Gegenstand kaufen");
break;
}
}
}
}
SendClientMessage(playerid,GELB,"Klicke nun eine Reportkategorie an.");
SelectTextDraw(playerid,GRAU);
return 1;
}
COMMAND:reportbot(playerid,params[])
{
#pragma unused params
if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,GRAU,"Du bist kein "#SERVERTAG" Teammitglied./Du hast nicht den jeweiligen Adminrang.");
if(Spieler[playerid][pAtReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
if(Spieler[playerid][AmUmkleiden] != 0)return 1;
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
ShowPlayerDialog(playerid,DIALOG_ASKBOT,DIALOG_STYLE_INPUT,""#SERVERFARBE""#SERVERTAG""#HTML_WHITE": Hilfe-System","Gib bitte ein Stichwort ein!","Suchen","Abbrechen");
return 1;
}
COMMAND:report(playerid,params[])
{
#pragma unused params
new onlineadmins;
if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
ForEachPlayer(i){if(IsPlayerConnected(i) && !IsPlayerNPC(i)){if(GetPVarInt(i,"Eingeloggt") == 1){if(isPlayerAnAdmin(i,1)){onlineadmins++;}}}}
if(onlineadmins == 0)return SendClientMessage(playerid,GRAU,"Es ist kein "#SERVERTAG" Teammitglied Online. Schaue doch mal in unserem Wiki vorbei, dort findest du bestimmt eine Antwort. Du findest unser Wiki unter wiki.planet-rp.de."),SendClientMessage(playerid,WRONGCMD,"Oder nutze unseren Report-Bot (/reportbot).");
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Allgemeine Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nDonator\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,""#SERVERFARBE""#SERVERTAG""#HTML_WHITE": Report","Allgemeine Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nDonator","Auswählen","Abbrechen");
}
COMMAND:reportfix(playerid,params[])
{
#pragma unused params
if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,GRAU,"Du bist kein "#SERVERTAG" Teammitglied./Du hast nicht den jeweiligen Adminrang.");
for(new x = 0; x < MAX_PLAYERS; x++)
{
Spieler[x][pReportPartner] = -1;
Spieler[x][pAReport] = 0;
Spieler[x][pAtReport] = 0;
DeleteReport(x);
for(new i=0;i<5;i++){ Spieler[x][pWriteReport][i] = false; }
Delete3DTextLabel(ReportLabel[x]);
}
SendClientMessage(playerid,GELB,"Alle Reports wurden gelöscht.");
return 1;
}
COMMAND:sreport(playerid,params[])
{
#pragma unused params
if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
new pID = Spieler[playerid][pReportPartner],string[256];
if(Spieler[playerid][pAtReport] != 0)
{
format(string,sizeof(string),"[SUPPORT] %s hat den Report beendet.",Spieler[playerid][pName]);
SendClientMessage(pID,REPORTANDAFKCOLOR,string);
format(string,sizeof(string),"[SUPPORT] Du hast den Report mit %s beendet.",Spieler[pID][pName]);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
for(new i=0;i<4;i++){ Spieler[pID][pWriteReport][i] = false; }
Spieler[pID][pReportPartner] = -1;
Spieler[pID][pAReport] = 0;
Spieler[pID][pAtReport] = 0;
Spieler[playerid][pReportPartner] = -1;
Spieler[playerid][pAReport] = 0;
Spieler[playerid][pAtReport] = 0;
Delete3DTextLabel(ReportLabel[pID]);
Delete3DTextLabel(ReportLabel[playerid]);
return 1;
}
if(Spieler[playerid][pAReport] != 0)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"[SUPPORT] Du hast deinen aktuellen Report beendet.");
DeleteReport(playerid);
Spieler[playerid][pReportPartner] = -1;
Spieler[playerid][pAReport] = 0;
Spieler[playerid][pAtReport] = 0;
return 1;
}
return SendClientMessage(playerid,GRAU,"Du hast keinen Report abgesendet.");
}
Alles anzeigen
Code
if(clickedid == Reportdraw[0])
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][0] != -1)
{
format(string,sizeof(string),"%s\n%s",string,Spieler[ReportListitem[i][rID][0]][pName]);
counter++;
}
}
}
if(counter == 0)
{
SendClientMessage(playerid,GRAU,"Niemand hat einen Report (Fragen) geschrieben.");
CancelSelectTextDraw(playerid);
return 1;
}
CancelSelectTextDraw(playerid);
Spieler[playerid][pReportSelect] = 0;
ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fragen",string,"Auswählen","Abbrechen");
return 1;
}
if(clickedid == Reportdraw[1])
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][1] != -1)
{
format(string,sizeof(string),"%s\n%s",string,Spieler[ReportListitem[i][rID][1]][pName]);
counter++;
}
}
}
if(counter == 0)
{
SendClientMessage(playerid,GRAU,"Niemand hat eine Einweisung angefordert.");
CancelSelectTextDraw(playerid);
return 1;
}
CancelSelectTextDraw(playerid);
Spieler[playerid][pReportSelect] = 1;
ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Einweisung",string,"Auswählen","Abbrechen");
return 1;
}
if(clickedid == Reportdraw[2])
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][2] != -1)
{
format(string,sizeof(string),"%s\n%s",string,Spieler[ReportListitem[i][rID][2]][pName]);
counter++;
}
}
}
if(counter == 0)
{
SendClientMessage(playerid,GRAU,"Niemand hat einen Report (Regelmeldung) geschrieben.");
CancelSelectTextDraw(playerid);
return 1;
}
CancelSelectTextDraw(playerid);
Spieler[playerid][pReportSelect] = 2;
ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Regelmeldung",string,"Auswählen","Abbrechen");
return 1;
}
if(clickedid == Reportdraw[3])
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][3] != -1)
{
format(string,sizeof(string),"%s\n%s",string,Spieler[ReportListitem[i][rID][3]][pName]);
counter++;
}
}
}
if(counter == 0)
{
SendClientMessage(playerid,GRAU,"Niemand hat einen Report (Fraktion) geschrieben.");
CancelSelectTextDraw(playerid);
return 1;
}
CancelSelectTextDraw(playerid);
Spieler[playerid][pReportSelect] = 3;
ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fraktion",string,"Auswählen","Abbrechen");
return 1;
}
if(clickedid == Reportdraw[4])
{
for(new i=0;i<30;i++)
{
if(ReportListitem[i][rID][4] != -1)
{
format(string,sizeof(string),"%s\n(ID:%i) %s",string,ReportListitem[i][rID][4],Spieler[ReportListitem[i][rID][4]][pName]);
}
else
{
format(string,sizeof(string),"%s\n-",string);
}
counter++;
}
if(counter == 0)
{
SendClientMessage(playerid,GRAU,"Niemand hat einen Report (Donator) geschrieben.");
CancelSelectTextDraw(playerid);
return 1;
}
CancelSelectTextDraw(playerid);
Spieler[playerid][pReportSelect] = 4;
ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Donator",string,"Auswählen","Abbrechen");
return 1;
}
Alles anzeigen
Code
case DIALOG_REPORTANNAHME:
{
new clickedlistitem = Spieler[playerid][pReportSelect],string[1000],headerstring[64];
if(response == 0)
{
Spieler[playerid][pReportSelect] = 0;
CancelSelectTextDraw(playerid);
return 1;
}
else
{
if(!IsPlayerConnected(ReportListitem[listitem][rID][clickedlistitem]) || ReportListitem[listitem][rID][clickedlistitem] == -1)
{
for(new i=0;i<30;i++)
{
if(ReportListitem[i][rID][clickedlistitem] != -1)
{
format(string,sizeof(string),"%s\n(ID:%i) %s",string,ReportListitem[i][rID][clickedlistitem],Spieler[ReportListitem[i][rID][clickedlistitem]][pName]);
}
else
{
format(string,sizeof(string),"%s\n-",string);
}
}
switch(clickedlistitem)
{
case 0:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fragen",string,"Auswählen","Abbrechen");
case 1:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Einweisung",string,"Auswählen","Abbrechen");
case 2:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Regelmeldung",string,"Auswählen","Abbrechen");
case 3:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fraktion",string,"Auswählen","Abbrechen");
case 4:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Donator",string,"Auswählen","Abbrechen");
}
return SendClientMessage(playerid,GRAU,"Spieler der den Report geschrieben hat ist nicht mehr eingeloggt.");
}
if(playerid == ReportListitem[listitem][rID][clickedlistitem])
{
for(new i=0;i<30;i++)
{
if(ReportListitem[i][rID][clickedlistitem] != -1)
{
format(string,sizeof(string),"%s\n(ID:%i) %s",string,ReportListitem[i][rID][clickedlistitem],Spieler[ReportListitem[i][rID][clickedlistitem]][pName]);
}
else
{
format(string,sizeof(string),"%s\n-",string);
}
}
switch(clickedlistitem)
{
case 0:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fragen",string,"Auswählen","Abbrechen");
case 1:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Einweisung",string,"Auswählen","Abbrechen");
case 2:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Regelmeldung",string,"Auswählen","Abbrechen");
case 3:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fraktion",string,"Auswählen","Abbrechen");
case 4:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Donator",string,"Auswählen","Abbrechen");
}
return SendClientMessage(playerid,GRAU,"Du kannst keine eigenen Reports annehmen.");
}
if(playerid == ReportListitem[listitem][rID][clickedlistitem])
{
for(new i=0;i<30;i++)
{
if(ReportListitem[i][rID][clickedlistitem] != -1)
{
format(string,sizeof(string),"%s\n(ID:%i) %s",string,ReportListitem[i][rID][clickedlistitem],Spieler[ReportListitem[i][rID][clickedlistitem]][pName]);
}
else
{
format(string,sizeof(string),"%s\n-",string);
}
}
switch(clickedlistitem)
{
case 0:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fragen",string,"Auswählen","Abbrechen");
case 1:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Einweisung",string,"Auswählen","Abbrechen");
case 2:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Regelmeldung",string,"Auswählen","Abbrechen");
case 3:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Fraktion",string,"Auswählen","Abbrechen");
case 4:ShowPlayerDialog(playerid,DIALOG_REPORTANNAHME,DIALOG_STYLE_LIST,"Donator",string,"Auswählen","Abbrechen");
}
return SendClientMessage(playerid,GRAU,"Du kannst keine eigenen Reports annehmen.");
}
if(clickedlistitem == 1)
{
format(string,sizeof(string),"%s %s hat die Einweisung von %s angenommen.",Adminrang(playerid),SpielerName(playerid),Spieler[ReportListitem[listitem][rID][clickedlistitem]][pName]);
SendAdminMessage(REPORTACCEPTCOLOR,string);
DeleteReport(playerid);
format(string,sizeof(string),"%s %s ist bereit mit dir einen Einweisung auf den Server zu machen.",Adminrang(playerid),SpielerName(playerid));
SendClientMessage(ReportListitem[listitem][rID][clickedlistitem],REPORTACCEPTCOLOR,string);
new Float:Pos[3];
GetPlayerPos(ReportListitem[listitem][rID][clickedlistitem],Pos[0],Pos[1],Pos[2]);
if(IsPlayerInAnyVehicle(playerid))
{
new pID = ReportListitem[listitem][rID][clickedlistitem];
SetPlayerPosEx(playerid,Pos[0],Pos[1],Pos[2]);
SetVehiclePosEx(GetPlayerVehicleID(playerid),Pos[0],Pos[1],Pos[2]);
SetPlayerInterior(playerid,GetPlayerInterior(ReportListitem[listitem][rID][clickedlistitem]));
LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(ReportListitem[listitem][rID][clickedlistitem]));
SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(ReportListitem[listitem][rID][clickedlistitem]));
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(ReportListitem[listitem][rID][clickedlistitem]));
Spieler[playerid][Reports]++;
DeleteReport(ReportListitem[listitem][rID][clickedlistitem]);
Spieler[pID][pWriteReport][clickedlistitem] = false;
UpdateReportTextdraw();
}
else
{
new pID = ReportListitem[listitem][rID][clickedlistitem];
SetPlayerPosEx(playerid,Pos[0],Pos[1],Pos[2]);
SetPlayerInterior(playerid,GetPlayerInterior(ReportListitem[listitem][rID][clickedlistitem]));
SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(ReportListitem[listitem][rID][clickedlistitem]));
Spieler[playerid][Reports]++;
DeleteReport(pID);
Spieler[pID][pWriteReport][clickedlistitem] = false;
UpdateReportTextdraw();
}
return 1;
}
new pID = ReportListitem[listitem][rID][clickedlistitem];
format(string,sizeof(string),"%s %s hat den Report von %s angenommen.",Adminrang(playerid),SpielerName(playerid),Spieler[pID][pName]);
SendAdminMessage(REPORTACCEPTCOLOR,string);
SendClientMessage(playerid,REPORTACCEPTCOLOR,"Du kannst nun per öffentlichen Chat mit dem User schreiben.");
format(string,sizeof(string),"%s %s hat deinen Report angenommen per öffentlichen Chat kannst du mit ihm schreiben.",Adminrang(playerid),SpielerName(playerid));
SendClientMessage(pID,REPORTACCEPTCOLOR,string);
format(string,sizeof(string),"%s hat geschrieben: %s",SpielerName(pID),ReportListitem[listitem][rText][clickedlistitem]);
SendClientMessage(playerid,REPORTACCEPTCOLOR,string);
Spieler[playerid][pAtReport] = 1;
Spieler[pID][pAtReport] = 1;
Spieler[pID][pAReport] = 0;
Spieler[playerid][pReportPartner] = pID;
Spieler[pID][pReportPartner] = playerid;
Spieler[pID][pWriteReport] = false;
if(ReportLabel[playerid])Delete3DTextLabel(ReportLabel[playerid]);
if(ReportLabel[playerid])Delete3DTextLabel(ReportLabel[pID]);
ReportLabel[playerid] = Create3DTextLabel("Reportbearbeitung",REPORTANDAFKCOLOR,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,0,1);
ReportLabel[pID] = Create3DTextLabel("Im Report",REPORTANDAFKCOLOR,30.0,40.0,50.0,MAX_STREAM_NAME_DISTANCE,0,1);
Attach3DTextLabelToPlayer(ReportLabel[playerid],playerid,0.0,0.0,0.4);
Attach3DTextLabelToPlayer(ReportLabel[pID],pID,0.0,0.0,0.4);
format(headerstring,sizeof(headerstring),"Report %s:",Spieler[pID][pName]);
Spieler[playerid][Reports]++;
DeleteReport(pID);
Spieler[pID][pWriteReport][clickedlistitem] = false;
UpdateReportTextdraw();
return 1;
}
}
case DIALOG_REPORTANNAHME2:
{
new string[128],pID = Spieler[playerid][pReportPartner];
if(response == 0 || response == 1)
{
format(string,sizeof(string),"[SUPPORT] %s: %s",Spieler[playerid][pName],inputtext);
SendClientMessage(pID,REPORTANDAFKCOLOR,string);
format(string,sizeof(string),"[SUPPORT] %s: %s",Spieler[playerid][pName],inputtext);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
return 1;
}
}
case DIALOG_REPORT:
{
if(response == 0)return 1;
else
{
switch(listitem)
{
case 0:
{
if(Spieler[playerid][pAReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Fragen)","Hast du eine Frage oder ein anliegen?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
}
case 1:
{
if(Spieler[playerid][pAReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
ShowPlayerDialog(playerid,DIALOG_REPORT_REGEL,DIALOG_STYLE_INPUT,"Report (Regelverstoß)","Hast du einen Regelverstoß gesehen oder warst Zeuge eines Verstoßes gegen die Serverregeln?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
}
case 2: ShowPlayerDialog(playerid,DIALOG_REPORT_BUG,DIALOG_STYLE_INPUT,"Report (Bugmeldung)","Hast du einen Fehler im Script gefunden?\nDann mal her damit!\nBeschreibe den Fehler gut und deutlich.\nAusnutze wird mit einem Bann bestrafft.\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
case 3:
{
if(Spieler[playerid][pAReport] != 0)return SendClientMessage(playerid,GRAU,"Du hast bereits eine Einweisung angefordert.");
ShowPlayerDialog(playerid,DIALOG_REPORT_EINWEISUNG,DIALOG_STYLE_MSGBOX,"Report (Einweisung)","Möchtest du eine Einweisung auf unserem Server bekommen?\n\n"#SERVERFARBE""#SERVERNAME"","Auswählen","Zurück");
}
case 4:
{
if(Spieler[playerid][pAReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
ShowPlayerDialog(playerid,DIALOG_REPORT_DONATOR,DIALOG_STYLE_INPUT,"Report (Donator)","Hast du Probleme oder Fragen zum Donator?\nSchildere das Problem/Frage kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
}
case 5:
{
if(Spieler[playerid][pAReport] != 0)return SendClientMessage(playerid,GRAU,"Du bist bereits in einem Report aktiv.");
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAKTION,DIALOG_STYLE_INPUT,"Report (Fraktion)","Hast du Probleme mit/in deiner Fraktion?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
}
}
}
return 1;
}
case DIALOG_REPORT_FRAGEN:
{
new string[128];
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen");
}
else
{
if(!strlen(inputtext) || strlen(inputtext) > 90)
{
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Fragen)","Hast du eine Frage oder ein anliegen?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
}
else
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][0] == -1)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Dein Report enthält folgende Aussage:");
format(string,sizeof(string),"- %s",inputtext);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du kannst deinen aktuellen Report mit '/sreport' beenden.");
format(string,sizeof(string),"%s (ID:%i) hat einen Report (Fragen) abgesendet.(/reports => Fragen)",SpielerName(playerid),playerid);
SendAdminMessage(GELB,string);
Spieler[playerid][pAReport] = 1;
Spieler[playerid][pWriteReport][0] = true;
UpdateReportTextdraw();
ReportListitem[i][rText][0] = gettime();
strmid(ReportListitem[i][rText][0],inputtext,0,strlen(inputtext),90);
ReportListitem[i][rID][0] = playerid;
ReportListitem[i][rAccepted][0] = true;
return 1;
}
}
}
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Fragen)","Hast du eine Frage oder ein anliegen?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Fragen) absenden.");
}
}
return 1;
}
case DIALOG_REPORT_DONATOR:
{
new string[128];
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nDonator\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nDonator","Auswählen","Abbrechen");
}
else
{
if(!strlen(inputtext) || strlen(inputtext) > 90)
{
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Donator)","Hast du Probleme oder Fragen zum Donator?\nSchildere das Problem/Frage kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
}
else
{
for(new i=0;i<30;i++)
{
if(ReportListitem[i][rID][4] == -1)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Dein Report enthält folgende Aussage:");
format(string,sizeof(string),"- %s",inputtext);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du kannst deinen aktuellen Report mit '/sreport' beenden.");
format(string,sizeof(string),"%s (ID:%i) hat einen Report (Donator) abgesendet.(/reports => Donator)",SpielerName(playerid),playerid);
SendAdminMessage(GELB,string);
Spieler[playerid][pAReport] = 1;
Spieler[playerid][pWriteReport][4] = true;
UpdateReportTextdraw();
ReportListitem[i][rText][4] = gettime();
strmid(ReportListitem[i][rText][4],inputtext,0,strlen(inputtext),90);
ReportListitem[i][rID][4] = playerid;
ReportListitem[i][rAccepted][4] = true;
return 1;
}
}
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Donator)","Hast du Probleme oder Fragen zum Donator?\nSchildere das Problem/Frage kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Donator) absenden.");
}
}
return 1;
}
case DIALOG_REPORT_REGEL:
{
new string[128];
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen");
}
else
{
if(!strlen(inputtext) || strlen(inputtext) > 90)
{
ShowPlayerDialog(playerid,DIALOG_REPORT_REGEL,DIALOG_STYLE_INPUT,"Report (Regelverstoß)","Hast du einen Regelverstoß gesehen oder warst Zeuge eines Verstoßes gegen die Serverregeln?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
}
else
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][2] == -1)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Dein Report enthält folgende Aussage:");
format(string,sizeof(string),"- %s",inputtext);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du kannst deinen aktuellen Report mit '/sreport' beenden.");
format(string,sizeof(string),"%s (ID:%i) hat einen Report (Regelmeldung) abgesendet.(/reports => Regelmeldung)",SpielerName(playerid),playerid);
SendAdminMessage(GELB,string);
Spieler[playerid][pAReport] = 1;
Spieler[playerid][pWriteReport][2] = true;
UpdateReportTextdraw();
ReportListitem[i][rText][2] = gettime();
strmid(ReportListitem[i][rText][2],inputtext,0,strlen(inputtext),90);
ReportListitem[i][rID][2] = playerid;
ReportListitem[i][rAccepted][2] = true;
return 1;
}
}
}
ShowPlayerDialog(playerid,DIALOG_REPORT_REGEL,DIALOG_STYLE_INPUT,"Report (Regelverstoß)","Hast du einen Regelverstoß gesehen oder warst Zeuge eines Verstoßes gegen die Serverregeln?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Regelverstoß) absenden.");
}
}
return 1;
}
case DIALOG_REPORT_BUG:
{
new query[500];
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen");
}
else
{
if(!strlen(inputtext) || strlen(inputtext) > 256)
{
ShowPlayerDialog(playerid,DIALOG_REPORT_BUG,DIALOG_STYLE_INPUT,"Report (Bugmeldung)","Hast du einen Fehler im Script gefunden?\nDann mal her damit!\nBeschreibe den Fehler gut und deutlich.\nAusnutze wird mit einem Bann bestrafft.\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 256 Zeichen benutzen.");
}
else
{
getdate(jahr,monat,tag);
gettime(stunde,minute,sekunde);
mysql_format(MySqlConnection,query,sizeof(query),"INSERT INTO `"#SERVERTAG"_bugs` (`Writer`,`Text`,`Priorität`,`Tick`,`Uhrzeit`,`Datum`) VALUES ('%s','%s','NONE','NONE','%04d-%02d-%02d','%02d:%02d:%02d')",Spieler[playerid][pName],inputtext,jahr,monat,tag,stunde,minute,sekunde);
mysql_function_query(MySqlConnection,query,false,"","");
ShowPlayerDialog(playerid,DIALOG_REPORT_BUG_EMTY,DIALOG_STYLE_LIST,"Report (Bugmeldung)","Kleiner Fehler\nMittlerer Fehler\nStarker Fehler\nSchwerer Fehler","Absenden","Abbrechen");
}
}
return 1;
}
case DIALOG_REPORT_BUG_EMTY:
{
new query[500];
if(response == 0)
{
mysql_format(MySqlConnection,query,sizeof(query),"DELETE FROM "#SERVERTAG"_bugs WHERE Priorität = 'NONE' AND Writer = '%s'",Spieler[playerid][pName]);
mysql_function_query(MySqlConnection,query,false,"","");
return 1;
}
else
{
switch(listitem)
{
case 0:
{
mysql_format(MySqlConnection,query,sizeof(query),"UPDATE "#SERVERTAG"_bugs SET Priorität='Kleiner Fehler' WHERE Priorität='NONE' AND Writer='%s'",Spieler[playerid][pName]);
mysql_function_query(MySqlConnection,query,false,"","");
}
case 1:
{
mysql_format(MySqlConnection,query,sizeof(query),"UPDATE "#SERVERTAG"_bugs SET Priorität='Mittlerer Fehler' WHERE Priorität='NONE' AND Writer='%s'",Spieler[playerid][pName]);
mysql_function_query(MySqlConnection,query,false,"","");
}
case 2:
{
mysql_format(MySqlConnection,query,sizeof(query),"UPDATE "#SERVERTAG"_bugs SET Priorität='Starker Fehler' WHERE Priorität='NONE' AND Writer='%s'",Spieler[playerid][pName]);
mysql_function_query(MySqlConnection,query,false,"","");
}
case 3:
{
mysql_format(MySqlConnection,query,sizeof(query),"UPDATE "#SERVERTAG"_bugs SET Priorität='Schwerer Fehler' WHERE Priorität='NONE' AND Writer='%s'",Spieler[playerid][pName]);
mysql_function_query(MySqlConnection,query,false,"","");
}
}
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Danke für deine Bugmeldung.");
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Der Fehler wird so schnell wie möglich von unserem Scripter behoben.");
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Weiterhin viel Spaß beim spielen wünscht dir das "#SERVERNAME" Team.");
}
return 1;
}
case DIALOG_REPORT_EINWEISUNG:
{
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen");
}
else
{
if(GetPlayerLevel(playerid) > 3)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen"),SendClientMessage(playerid,GRAU,"Du kannst das nur unter oder mit Level 3.");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen"),SendClientMessage(playerid,GRAU,"Du kannst das nur unter oder mit Level 3.");
}
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][1] == -1)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du hast eine Einweisung angefordert.");
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Gedulde dich einen moment bis ein Supporter/Admin sich dir animmnt.");
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Weiterhin viel Spaß beim Spielen wünscht dir das "#SERVERNAME" Team.");
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du kannst deine angeforderte Einweisung mit '/sreport' beenden.");
Spieler[playerid][pAReport] = 1;
Spieler[playerid][pWriteReport][1] = true;
UpdateReportTextdraw();
ReportListitem[i][rID][1] = playerid;
ReportListitem[i][rAccepted][1] = true;
return 1;
}
}
}
ShowPlayerDialog(playerid,DIALOG_REPORT_EINWEISUNG,DIALOG_STYLE_MSGBOX,"Report (Einweisung)","Möchtest du eine Einweisung auf unserem Server bekommen?\n\n"#SERVERFARBE""#SERVERNAME"","Auswählen","Zurück");
SendClientMessage(playerid,GRAU,"Du kannst momentan keine Einweisung anfordern.");
}
return 1;
}
case DIALOG_REPORT_FRAKTION:
{
new string[128];
if(response == 0)
{
if(!isPlayerInFrakt(playerid,0))return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung\nFraktion","Auswählen","Abbrechen");
return ShowPlayerDialog(playerid,DIALOG_REPORT,DIALOG_STYLE_LIST,"Report","Fragen\nRegelverstoß\nBugmeldung\nEinweisung","Auswählen","Abbrechen");
}
else
{
if(!strlen(inputtext) || strlen(inputtext) > 90)
{
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAKTION,DIALOG_STYLE_INPUT,"Report (Fraktion)","Hast du Probleme mit/in deiner Fraktion?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
}
else
{
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1)
{
if(ReportListitem[i][rID][3] == -1)
{
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Dein Report enthält folgende Aussage:");
format(string,sizeof(string),"- %s",inputtext);
SendClientMessage(playerid,REPORTANDAFKCOLOR,string);
SendClientMessage(playerid,REPORTANDAFKCOLOR,"Du kannst deinen aktuellen Report mit '/sreport' beenden.");
format(string,sizeof(string),"%s (ID:%i) hat einen Report (Fraktion) abgesendet.(/reports => Fraktion)",SpielerName(playerid),playerid);
SendAdminMessage(GELB,string);
Spieler[playerid][pAReport] = 1;
Spieler[playerid][pWriteReport][3] = true;
UpdateReportTextdraw();
ReportListitem[i][rText][3] = gettime();
strmid(ReportListitem[i][rText][3],inputtext,0,strlen(inputtext),90);
ReportListitem[i][rID][3] = playerid;
ReportListitem[i][rAccepted][3] = true;
return 1;
}
}
}
ShowPlayerDialog(playerid,DIALOG_REPORT_FRAKTION,DIALOG_STYLE_INPUT,"Report (Fraktion)","Hast du Probleme mit/in deiner Fraktion?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Fraktion) absenden.");
}
}
return 1;
}
Alles anzeigen
Bitte um Hilfe MfG lui