Kissé gány munkát végeztem, ez nem rám vall, nincs is tesztelve, sokkal jobban is megírható ez a kis kód.
Kérlek teszteld le, és írd le, hogy mi a probléma.
Az alábbi kódot Pedró kollégával raktuk össze.
#include a_samp
#include zcmd
#define LECSUK 6666
#define LECSUKK 6667
#define LECSUKKK 6668
new pID[MAX_PLAYERS] = {-1, ...};
CMD:lecsuk(playerid, params[])
{
ShowPlayerDialog(playerid, LECSUK, DIALOG_STYLE_INPUT, \"/lecsuk\", \"Kit szeretnél lecsukni? Add meg a játékos ID-jét!\", \"Mehet\", \"\");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == LECSUK && response == 1)
{
pID[playerid] = strval(inputtext);
ShowPlayerDialog(playerid, LECSUKK, DIALOG_STYLE_LIST, \"Indok?\", \"Indok1\\nIndok2\\nIndok3\", \"Mehet\", \"\");
return 1;
}
if(dialogid == LECSUKK && response == 1)
{
SetPVarString(playerid, \"LecsukIndok\", inputtext);
ShowPlayerDialog(playerid, LECSUKKK, DIALOG_STYLE_INPUT, \"/lecsuk\", \"Percet írj be.\", \"Mehet\", \"\");
return 1;
}
if(dialogid == LECSUKKK && response == 1)
{
new minuten = strval(inputtext);
SetPlayerPos(playerid, 1.0, 1.0, 1.0); // Börtön koordináták!
new string[256];
GetPVarString(playerid, \"LecsukIndok\", string, 256);
format(string, 128, \"%s lecsukta %s -t. Indok: %s\", GetPlayerNameEx(playerid), GetPlayerNameEx(pID[playerid]), string);
SetTimerEx(\"Kienged\", minuten*60000, false, \"i\", playerid);
pID[playerid] = -1;
return 1;
}
return 0;
}
public Kienged(playerid);
public Kienged(playerid)
{
SetPlayerPos(playerid, 2.0, 2.0, 2.0); // Szabadon bocsátás pozíciója
return 1;
}
stock GetPlayerNameEx(playerid)
{
new n[24];
GetPlayerName(playerid, n, 24);
return n;
}