[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум pawno » Pawno » Готовые решения » Система мута на секунды с причиной для mxini
Система мута на секунды с причиной для mxini
ЛолЛисДата: Среда, 16.01.2013, 22:36 | Сообщение # 1
Полковник
Группа: Администратор
Сообщений: 283
Статус: Offline
Автор Sergey то-есть я (вырезал из мода ну сё-ровно )

Ко всем new

Код
new othertimer; //система мута


В pInfo добавите

Код
pMuted,   
   pMuteTime,


В public OnGameModeInit()

Код
othertimer = SetTimer("OtherTime", 1000, 1);//система мута


В public OnGameModeExit()

Код
KillTimer(othertimer);//система мута


в public OnPlayerText(playerid, text[])

      
Код
if(PlayerInfo[playerid] [pMuted]== 1)
     {
      SendClientMessage(playerid, COLOR_GREEN, "У вас отключен чат!");
      return 0;
     }


В public OnPlayerCommandText(playerid, cmdtext[])

Код
if(strcmp(cmd, "/mute", true) == 0)   
{   
   tmp = strtok(cmdtext, idx);   
if(!strlen(tmp) && PlayerInfo [playerid][pAdmin]>= 1) return SendClientMessage(playerid, COLOR_GREEN, "[DM DRIFT] {FFFFFF}/mute [Ид] [секунды]");   
new playa,mtime;   
   playa = ReturnUser(tmp);   
if (PlayerInfo [playerid][pAdmin]>= 1)   
{   
if(IsPlayerConnected(playa))   
{   
if(playa != INVALID_PLAYER_ID)   
{   
if(PlayerInfo [playerid][pVIP]> 0) return SendClientMessage(playerid, COLOR_GRAD2, "VIP не может быть мут!");   
GetPlayerName(playa, giveplayer, sizeof(giveplayer));   
GetPlayerName(playerid, sendername, sizeof(sendername));   
if(PlayerInfo [playa][pMuted]== 0)   
{   
   tmp = strtok(cmdtext, idx);   
if(!strlen(tmp) && PlayerInfo [playerid][pAdmin]>= 1) return SendClientMessage(playerid, COLOR_GREEN, "[DM DRIFT] {FFFFFF}/mute [Ид] [секунды]");   
   mtime = strval(tmp);   
PlayerInfo [playa][pMuted]= 1;   
PlayerInfo [playa][pMuteTime]= mtime;   
   format(string, sizeof(string), "Администратор %s отключил чат игроку %s на %d секунд",sendername,giveplayer, mtime);   
SendClientMessageToAll(COLOR_GRAD2, string);   
}   
else   
{   
PlayerInfo [playa][pMuted]= 0;   
PlayerInfo [playa][pMuteTime]= 0;   
   format(string, sizeof(string), "Администратор %s включил чат игроку %s",sendername,giveplayer);   
SendClientMessageToAll(COLOR_GRAD2, string);   
}   
}   
}   
}   
return 1;   
}


В конец мода

Код
//---------------------------- система мута   
   forward OtherTime();   
public OtherTime()   
{   
new plname[MAX_PLAYER_NAME], string[128];   
for(new i = 0; i < MAX_PLAYERS; i++)   
{   
if(PlayerInfo [i][pMuteTime]>=1 && PlayerInfo [i][pMuted]== 1)   
{   
PlayerInfo [i][pMuteTime]-=1;   
}   
else if(PlayerInfo [i][pMuteTime]<=0 && PlayerInfo [i][pMuted]== 1)   
{   
if(IsPlayerConnected(i))   
{   
PlayerInfo [i][pMuteTime]= 0;   
PlayerInfo [i][pMuted]= 0;   
GetPlayerName(i,plname,sizeof(plname));   
   format(string,sizeof(string),"[DM DRIFT]: {ffffff}Игроку %s был автоматически включен чат",plname);   
SendClientMessageToAll(COLOR_GREEN,string);   
}   
}   
}   
return 1;   
}


Чуть не забыл теперь добавляем в регистрацию найдёте в public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

Код
ini_setInteger(iniFile, "Muted", 0); // Запишем в файл.   
   ini_setInteger(iniFile, "MuteTime", 0); // Запишем в файл.


Тут же только после строчки ini_closeFile(iniFile);

Код
PlayerInfo [playerid][pMuted]= 0;   
PlayerInfo [playerid][pMuteTime]= 0;


Деалог где авторизация

Код
ini_getInteger(iniFile, "Muted", PlayerInfo[playerid][pMuted]); // Запишем в переменную.   
   ini_getInteger(iniFile, "MuteTime", PlayerInfo[playerid][pMuteTime]); // Запишем в переменную.


И это туда где сохранения ак.

Код
ini_getInteger(iniFile, "Muted", PlayerInfo[playerid][pMuted]); // Запишем в переменную.   
   ini_getInteger(iniFile, "MuteTime", PlayerInfo[playerid][pMuteTime]); // Запишем в переменную.


IP: 83.222.105.54:8358
© [CRMP] Россия - Дрифт
Форум pawno » Pawno » Готовые решения » Система мута на секунды с причиной для mxini
  • Страница 1 из 1
  • 1
Поиск: