CMD:report(playerid, params[]) { if(PlayerInfo[playerid][pAdmin] >= 2 && PlayerInfo[playerid][pAdmin] < 1338) { SendClientMessageEx(playerid, COLOR_GRAD2, "You can't submit reports as an administrator."); return 1; } if(PlayerInfo[playerid][pRMuted] != 0) { ShowPlayerDialog(playerid,7955,DIALOG_STYLE_MSGBOX,"Report blocked","You are blocked from submitting any reports!\n\nTips when reporting:\n- Report what you need, not who you need.\n- Be specific, report exactly what you need.\n- Do not make false reports.\n- Do not flame admins.\n- Report only for in-game items.\n- For shop orders use the /shoporder command","Close", ""); return 1; } if(JustReported[playerid] > 0) { SendClientMessageEx(playerid, COLOR_GREY, "Wait 25 seconds before sending another report!"); return 1; } if(isnull(params)) return SendClientMessageEx(playerid, COLOR_GRAD2, "USAGE: /report [ID] [text]"); JustReported[playerid]=25; SendReportToQue(playerid, params); SendClientMessageEx(playerid, COLOR_YELLOW, "Your report message was sent to the Admins."); return 1; }
stock SendReportToQue(reportfrom, reporttarget, report[]) { new bool:breakingloop = false, newid = INVALID_REPORT_ID; for(new i=0;i<MAX_REPORTS;i++) { if(!breakingloop) { if(Reports[i][HasBeenUsed] == 0) { breakingloop = true; newid = i; } } } if(newid != INVALID_REPORT_ID) { strmid(Reports[newid][Report], report, 0, strlen(report), 128); Reports[newid][ReportFrom] = reportfrom; Reports[newid][TimeToExpire] = 5; Reports[newid][HasBeenUsed] = 1; Reports[newid][BeingUsed] = 1; Reports[newid][ReportExpireTimer] = SetTimerEx("ReportTimer", 60000, 0, "d", newid); new string[128]; format(string, sizeof(string), "%s [%i] reporting %s [%i] (RID: %i): %s", GetPlayerNameEx(reportfrom), reportfrom, GetPlayerNameEx(reporttarget), reporttarget, newid, (report)); ABroadCast(COLOR_REPORT,string,2); } else { ClearReports(); SendReportToQue(reportfrom, reporttarget, report); } if(PlayerInfo[reportfrom][pDonateRank] == 4) { new string[128]; format(string, sizeof(string), "~r~Priority Report: ~g~%d", newid); foreach(Player, i) { if(PlayerInfo[i][pAdmin] >= 2) { GameTextForPlayer(i, string, 1500, 1); } } } }
if(isnull(params)) return SendClientMessageEx(playerid, COLOR_GRAD2, "USAGE: /report [ID] [text]");
new playerb, message[64];
if(sscanf(params, "us[64]", playerb, message)) return SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /report [ID] [text]");
SendReportToQue(playerid, params);
SendReportToQue(playerid, playerb, message);
Okay... As I said I'm a new, how exactly would I implement sscanf to do this?
|
plugins sscanf2
#include <sscanf>
PHP код:
PHP код:
PHP код:
PHP код:
|
new playerb, message[64]; if(sscanf(params, "us[64]", playerb, message)) return SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /report [ID] [text]"); if(!IsNumeric(playerb)) // Error is on this line { SendClientMessageEx(playerid, COLOR_GRAD1, "USAGE: /report [ID] [text]"); return 1; }