Guten Tag liebe Community!
Nach einigen Anfragen bezüglich eines Support
Systems habe ich mir gedacht, mal ein etwas
neues und anderes System zu erstellen.
Beschreibung
Während Ihr auf Euren seid, könnt ihr neue
Supporter festlegen, die für Spieleranfragen zuständig sind.
Die festgelegten Supporter können dann eventuelle Ticket Anfragen von
Spielern einsehen, bearbeiten oder auch ablehnen, wenn sie keine Zeit haben.
Dabei stellen die Spieler ihre Anfragen allerdings ohne Textzusatz oder Bemerkung.
Die Supporter können nur einsehen, dass der Spieler eine Anfrage gestellt hat
und diese dann zwangsläufig bearbeiten, also sich bsp. mit dem Spieler unterhalten.
Installation
1) FilterScript (AMX) herunterladen
2) in den Ordner "filterscripts" verschieben
3) in der Server Config bei "filterscripts" einfach "SupportSystem" hinzufügen
Bevor Ihr Euren Server nun neustartet, müsst Ihr noch den Befehl, zum
Hinzufügen der neuen Supporter, in Euren aktuellen Gamemode einbauen.
Dazu fügt Ihr folgenden Text am Ende der Funktion OnPlayerCommandText
ein und überprüft, ob beim Kompilieren irgendwelche Fehler auftreten sollten.
// am Ende von OnPlayerCommandText
new command[20], varUser[25], idxCount = 0;
command = strtok(cmdtext, idxCount);
if(strcmp(command, "/addspp", true) == 0)
{
varUser = strtok(cmdtext, idxCount);
if(!strlen(varUser))
{
SendClientMessage(playerid, 0xFFFFFFFF, "BENUTZE: /addspp [Spielername/Spieler ID]");
return 1;
}
CallRemoteFunction("addUserAsSupporter", "ds", playerid, varUser);
return 1;
}
Nach einem kompletten Server Neustart sollte das Script erfolgreich geladen sein.
Verwendung
Nachdem Ihr neue Supporter im Spiel festgelegt habt, können diese die Tickets
der anderen Spieler einsehen und dann bearbeiten, annehmen oder ablehnen.
Die Spieler, die eine Anfrage stellen möchten, können diese einfach stellen, wobei
immer nur eine Anfrage gleichzeitig gestellt werden kann. Danach muss der Spieler
warten, bis irgend ein Supporter, der online ist, die Anfrage annimt.
Dauert es dem Spieler zu lange oder seine Anfrage hat sich bereits erledigt, kann
er diese auch wieder zurückziehen. Nach langem warten kann er den Status checken.
Bilder & Downloads
Pastebin: Link dorthin
Download: PWN , AMX
Credits & Hinweise
Die Entfernung des Urheberrechtshinweises ist nicht gestattet.
Das Script könnt Ihr gern editieren und frei benutzen.
Viel Spaß damit und meldet bitte alle Bugs!
Mögliche Bugs / Fehlerbeseitigung
Beim Einfügen des /addspp Befehls könnte es zu zwei Fehlern kommen.
Sollte dieser Fehler auftreten, müsst Ihr die Funktion strtok noch in
Eurem Gamemode ergänzen. Fügt dazu folgendes am Ende des Scriptes ein:
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
Wenn Ihr die Funktion strtok nun aber mehrmals im Script integriert habt oder
ausversehen bei der Installation mit ins Script eingefügt habt, tritt dieser Fehler auf:
Ihr entfernt einfach die überflüssig hinzugefügte Funktion strtok. Fertig!
Freundliche Grüße
4#Future | Fake - Philip
----------