Skripta koju koristim:Raven's
Detaljan opis problema: Htjeo sam da mi /pomoc bude u dijalogu, napravio sam to ali ne na dobar nacin.. Sada mi nije jasno sta da uradim da bi to ljepo radilo...
Dio skripte: if(strcmp(cmd, "/pomoc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
// timer za pomoc
if(JustReported[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "** Pricekaj 20 sekundi pre nego sto posaljes slijedeci report ! ");
return 1;
}
if(PlayerInfo[playerid][pHMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Ne mozete govoriti, vi ste usutkani !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Koristite: /pomoc [text]");
return 1;
}
ShowPlayerDialog(playerid,13246,DIALOG_STYLE_INPUT ,"/pomoc","Vase pitanje ne smije da sadrzi bilo kakve vrste vredjanja, psovanja !\n\nU polje upisite zeljeno pitanje...","","");
// TIMER ZA POMOC
JustReported[playerid] = 1;
format(string, sizeof(string), "Potrebna pomoc igracu %s : %s", sendername, (result));
HBroadCast(COLOR_YELLOW,string);
SendClientMessage(playerid, COLOR_YELLOW, "Vas zahtjev za pomoc je poslan, molimo pricekajte odgovor.");
// timer za pomoc
SetTimerEx("ReportReset", 20000, false, "i", playerid);
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno): (http://www.zaslike.com/files/j4wlskxwthf7aagh4wo_thumb.png) (http://www.zaslike.com/viewer.php?file=j4wlskxwthf7aagh4wo.png)
ShowPlayerDialog(playerid,13246,DIALOG_STYLE_INPUT ,"/pomoc","Vase pitanje ne smije da sadrzi bilo kakve vrste vredjanja, psovanja !\n\nU polje upisite zeljeno pitanje..."Zatvori","");
U koji dio to stavljam?
Eto ti cela komanda pa pokušaj, mislim da bi trebalo raditi :D
if(strcmp(cmd, "/pomoc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
// timer za pomoc
if(JustReported[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "** Pricekaj 20 sekundi pre nego sto posaljes slijedeci report ! ");
return 1;
}
if(PlayerInfo[playerid][pHMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Ne mozete govoriti, vi ste usutkani !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Koristite: /pomoc [text]");
return 1;
}
ShowPlayerDialog(playerid,13246,DIALOG_STYLE_INPUT ,"/pomoc","Vase pitanje ne smije da sadrzi bilo kakve vrste vredjanja, psovanja !\n\nU polje upisite zeljeno pitanje..."Zatvori","");
// TIMER ZA POMOC
JustReported[playerid] = 1;
format(string, sizeof(string), "Potrebna pomoc igracu %s : %s", sendername, (result));
HBroadCast(COLOR_YELLOW,string);
SendClientMessage(playerid, COLOR_YELLOW, "Vas zahtjev za pomoc je poslan, molimo pricekajte odgovor.");
// timer za pomoc
SetTimerEx("ReportReset", 20000, false, "i", playerid);
}
return 1;
}
to ti nece raditi evo ti ovako
if(strcmp(cmd, "/pomoc", true) == 0)
{
if(IsPlayerConnected(playerid))
{
// timer za pomoc
if(JustReported[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "** Pricekaj 20 sekundi pre nego sto posaljes slijedeci report ! ");
return 1;
}
if(PlayerInfo[playerid][pHMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Ne mozete govoriti, vi ste usutkani !");
return 1;
}
ShowPlayerDialog(playerid,13246,DIALOG_STYLE_INPUT ,"/pomoc","Vase pitanje ne smije da sadrzi bilo kakve vrste vredjanja, psovanja !\n\nU polje upisite zeljeno pitanje...""Posalji","Zatvori");
}
return 1;
}
// ovo stavi u pod ondialogresponse
if(dialogid == 13246)
{
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
if(response)
{
if(strlen(inputtext) == 0) return SendClientMessage(playerid, COLOR_YELLOW, "Morate nesto napisati u pomoc");
// TIMER ZA POMOC
JustReported[playerid] = 1;
format(string, sizeof(string), "Potrebna pomoc igracu %s : %s", sendername, inputtext);
HBroadCast(COLOR_YELLOW,string);
SendClientMessage(playerid, COLOR_YELLOW, "Vas zahtjev za pomoc je poslan, molimo pricekajte odgovor.");
// timer za pomoc
SetTimerEx("ReportReset", 20000, false, "i", playerid);
}
return 1;
}