25.12.2010, 07:22
I need to script /report [text], you can give reports to 2 minutes and admins can respond to the report /acceptreport
dcmd_report(playerid, params[])
{
new tmp[256], idx;
tmp = strtok(params, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, 0x555252AA, "/report [id] [reason]");
return 1;
}else{
new pid = strval(tmp);
tmp = strrest(params, idx);
if(!IsPlayerConnected(pid)){
SendClientMessage(playerid, 0x555252AA, "Invalid Player");
return 1;
}else{
if(!strlen(tmp)){
SendClientMessage(playerid, 0x555252AA, "/report [id] [reason]");
return 1;
}else{
new name[MAX_PLAYER_NAME], name2[MAX_PLAYER_NAME], string[200];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(pid, name2, sizeof(name2));
format(string, sizeof(string), "*%s(%d) reported %s(%d) for '%s'", name, playerid, name2, pid, tmp);
for(new i=0; i<GetMaxPlayers(); i++){
if(IsPlayerConnected(i)){
if(IsPlayerAdmin(i)){
SendClientMessage(i, 0x555252AA, string);
}
}
}
}
}
}
return 1;
}
stock strrest(const string[], index)
{
new length = strlen(string),offset = index,result[256];
while ((index < length) && ((index - offset) < (sizeof(result) - 1)) && (string[index] > '\r'))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
dcmd_report(playerid, params[])
{
if(!strlen(params)){
SendClientMessage(playerid, 0x555252AA, "/report [text]");
return 1;
}else{
new name[MAX_PLAYER_NAME], string[200];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "*Report by %s: %s", name, params);
for(new i=0; i<GetMaxPlayers(); i++){
if(IsPlayerConnected(i)){
if(IsPlayerAdmin(i)){
SendClientMessage(i, 0x555252AA, string);
}
}
}
}
return 1;
}