20:05
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Модератор форума: AXE, Weddew  
mute на время
FellixДата: Четверг, 21.08.2008, 00:55 | Сообщение # 16
Новенький
Группа: Продвинутые
Сообщений: 6
Награды: 1
Репутация: -1
Замечания: 0%
Статус:
а может кто нибуть выложить если есть таймер на /mute , /ban , заморозку и /ajail ?
SanSayДата: Четверг, 21.08.2008, 08:13 | Сообщение # 17
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
короч у меня так сделано:
К другим ньюшкам
new mutetime[MAX_PLAYERS];
new Mute[MAX_PLAYERS];
new unMutetimer;

К другим форвардам
forward UnMute();

в паблики
public UnMute()
{
if (gdebug >= 3){printf("DEBUG UnMute()");}
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1 && mutetime[i] < 0)
{
mutetime[i]++;
//printf("JailTime %d %d",i,JailTime[i]);
}
if(IsPlayerConnected(i) == 1 && mutetime[i] > 0)
{
mutetime[i]--;
//printf("JailTime %d %d",i,JailTime[i]);
}
if(IsPlayerConnected(i) == 1 && mutetime[i] == 3)
{
Mute[i] = 0;
SendClientMessage(i, COLOR_YELLOW," Теперь вы можете говорить.");
}
}
}

В public GameModeExitFunc()
KillTimer(unMutetimer);

В public OnGameModeInit()
unMutetimer = SetTimer("UnMute", 1000, 1);

В public OnPlayerCommandText
//Муте на время
if(strcmp(cmd, "/mute", true) == 0)
{
if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] == 4251 || PlayerInfo[playerid][pAdmin] == 5346 || PlayerInfo[playerid][pAdmin] == 6175 || PlayerInfo[playerid][pAdmin] == 93864 || PlayerInfo[playerid][pAdmin] == 95438)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, " Используйте: /mute [playerid/часть ника] [секунды]");
return 1;
}
if(IsStringAName(tmp))
{
giveplayerid = GetPlayerID(tmp);
//printf("stringnameid %d",giveplayerid);
}
else
{
giveplayerid = strval(tmp);
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, " Используйте: /mute [playerid/часть ника] [секунды]");
return 1;
}

new time = strval(tmp);
if (IsPlayerConnected(giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
mutetime[giveplayerid] = time+3;
Mute[giveplayerid] = 1;
format(string, sizeof(string), " Тебя заткнул %s на %d секунд/ы (/timem)",sendername, mutetime[giveplayerid]);
SendClientMessage(giveplayerid,COLOR_RED, string);
format(string, sizeof(string), " Ты заткнул %s на %d секунд/ы",giveplayer, mutetime[giveplayerid]);
SendClientMessage(playerid,COLOR_RED, string);
return 1;
}
else
{
format(string, sizeof(string), " %d неактивный игрок.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Вы не авторизированы, для использование этой команды!");
return 1;
}
}

Вроде ни че не забыл, сделано на основе /jail на время

Добавлено (21.08.2008, 08:13)
---------------------------------------------
ааа... самое главное то забыл )))

В public OnPlayerText(playerid, text[])
if(Mute[playerid] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете говорить, вы заткнуты");
return 0;
}
Таким же макаром можно и муте на PM организовать, только последнее уже вставить нужно не в public OnPlayerText(playerid, text[])
а в public OnPlayerPrivmsg(playerid, recieverid, text[]), а если аналогично /mute сделать еще и... например /mutepm, то тогда PM будет отключаться отдельно от основного чата.

П.С. public OnPlayerText(playerid, text[]) и public OnPlayerPrivmsg(playerid, recieverid, text[]) могут не существовать у вас в моде, тогда их нужно просто создать)


simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
DoctorEvilДата: Четверг, 21.08.2008, 13:46 | Сообщение # 18
Новенький
Группа: Продвинутые
Сообщений: 47
Награды: 1
Репутация: 1
Замечания: 0%
Статус:
Че-то не компилит sad мод GF
Code
warning 217: loose indentation
error 017: undefined symbol "IsStringAName"
error 017: undefined symbol "GetPlayerID"
error 017: undefined symbol "gdebug"

InfernoДата: Четверг, 21.08.2008, 14:46 | Сообщение # 19
Хостинг-провайдер
Группа: I'm V.I.P.
Сообщений: 1320
Награды: 26
Город: /root
Репутация: 320
Замечания: 0%
Статус:
Quote (DoctorEvil)
error 017: undefined symbol "IsStringAName"
error 017: undefined symbol "GetPlayerID"
error 017: undefined symbol "gdebug"

Переменные: GetPlayerID, gdebug, IsStringAName не найдены, их надо добавить в мод

KaZaNOVaДата: Четверг, 21.08.2008, 16:51 | Сообщение # 20
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
Вот более валидный и упрощенный вариант. :)
Code
new swear[MAX_PLAYERS];
new mutetime[MAX_PLAYERS];

stock UnMute(playerid){
swear[playerid] = 0;
SendClientMessage(playerid, 0x33FF33AA, "Право голоса в чате восстановлено.");
return 0;
}

public OnPlayerText(playerid,text[]) {
if(swear[playerid] == 1){SendClientMessage(playerid, 0xFFFFFFAA, " ты лишен права голоса в основном чате.");return 0;}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[]){

new string[256], tmp[256], cmd[256] ;
new  sendername[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
new giveplayerid, idx;
cmd = strtok(cmdtext, idx);

if(strcmp(cmd, "/mute", true) == 0){
  if (IsPlayerAdmin(playerid)){
   tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)){
     SendClientMessage(playerid, COLOR_WHITE, "[система]: используйте: /mute [playerid] [секунды]");
    return 1;
    }
     
   giveplayerid = strval(tmp);
   tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)){
     SendClientMessage(playerid, COLOR_WHITE, "[система]: используйте: /mute [playerid] [секунды]");
    return 1;
    }
     
   new vrema = strval(tmp);
   if (IsPlayerConnected(giveplayerid)){
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    mutetime[giveplayerid] = vrema;
    new convert[MAX_PLAYERS];
    convert[giveplayerid] = vrema*1000;
    swear[giveplayerid] = 1;
    format(string, sizeof(string), " Тебя затнкул %s на%d секунд",sendername, mutetime[giveplayerid]);
    SendClientMessage(giveplayerid,COLOR_RED, string);
    format(string, sizeof(string), " Ты заткнул %s на%d секунд",giveplayer, mutetime[giveplayerid]);
    SendClientMessage(playerid,COLOR_RED, string);
    SetTimerEx("UnMute", convert[giveplayerid], 0, "%d", giveplayerid);
   return 1;
   }else{
    format(string, sizeof(string), " %d нет в сети .", giveplayerid);
    SendClientMessage(playerid, COLOR_WHITE, string);
    return 1;
   }
  }else{
   new pln[128];
   GetPlayerName(playerid, pln, sizeof(pln));
   printf("SYSTEM: [%s] VVEL /mute BEZ PRAV ADMINISTRATORA",pln);
  }
return 1;
}

return 1;
}



Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


InfernoДата: Четверг, 21.08.2008, 17:27 | Сообщение # 21
Хостинг-провайдер
Группа: I'm V.I.P.
Сообщений: 1320
Награды: 26
Город: /root
Репутация: 320
Замечания: 0%
Статус:
KaZaNOVa, а теперь все подробнее пожалуйста, что куда...
DoctorEvilДата: Четверг, 21.08.2008, 17:38 | Сообщение # 22
Новенький
Группа: Продвинутые
Сообщений: 47
Награды: 1
Репутация: 1
Замечания: 0%
Статус:
Скомпилировал, но не работает sad
KaZaNOVaДата: Четверг, 21.08.2008, 18:51 | Сообщение # 23
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
В Самое начало:
Code
new swear[MAX_PLAYERS];  
new mutetime[MAX_PLAYERS];

Куда нибудь между пабликами:

Code
stock UnMute(playerid){  
swear[playerid] = 0;  
SendClientMessage(playerid, 0x33FF33AA, "Право голоса в чате восстановлено.");  
return 0;  
}

В ОnPlayerText(playerid,text[]) :

Code
if(swear[playerid] == 1){SendClientMessage(playerid, 0xFFFFFFAA, " ты лишен права голоса в основном чате.");return 0;}


В OnPlayerCommandText(playerid, cmdtext[]):

Code
new string[256], tmp[256], cmd[256] ;  
new  sendername[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];  
new giveplayerid, idx;  
cmd = strtok(cmdtext, idx);  

if(strcmp(cmd, "/mute", true) == 0){  
   if (IsPlayerAdmin(playerid)){  
    tmp = strtok(cmdtext, idx);  
     if(!strlen(tmp)){  
      SendClientMessage(playerid, COLOR_WHITE, "[система]: используйте: /mute [playerid] [секунды]");  
     return 1;  
     }  
       
    giveplayerid = strval(tmp);  
    tmp = strtok(cmdtext, idx);  
     if(!strlen(tmp)){  
      SendClientMessage(playerid, COLOR_WHITE, "[система]: используйте: /mute [playerid] [секунды]");  
     return 1;  
     }  
       
    new vrema = strval(tmp);  
    if (IsPlayerConnected(giveplayerid)){  
     GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));  
     GetPlayerName(playerid, sendername, sizeof(sendername));  
     mutetime[giveplayerid] = vrema;  
     new convert[MAX_PLAYERS];  
     convert[giveplayerid] = vrema*1000;  
     swear[giveplayerid] = 1;  
     format(string, sizeof(string), " Тебя затнкул %s на%d секунд",sendername, mutetime[giveplayerid]);  
     SendClientMessage(giveplayerid,COLOR_RED, string);  
     format(string, sizeof(string), " Ты заткнул %s на%d секунд",giveplayer, mutetime[giveplayerid]);  
     SendClientMessage(playerid,COLOR_RED, string);  
     SetTimerEx("UnMute", convert[giveplayerid], 0, "%d", giveplayerid);  
    return 1;  
    }else{  
     format(string, sizeof(string), " %d нет в сети .", giveplayerid);  
     SendClientMessage(playerid, COLOR_WHITE, string);  
     return 1;  
    }  
   }else{  
    new pln[128];  
    GetPlayerName(playerid, pln, sizeof(pln));  
    printf("SYSTEM: [%s] VVEL /mute BEZ PRAV ADMINISTRATORA",pln);  
   }  
return 1;  
}

2 Inf1203 неужели непонятны названия пабликов? о_О Или я пишу по китайски suicide2
2 DoctorEvil, что именно у тебя не работает? Какие ошибки выдает?


Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


InfernoДата: Четверг, 21.08.2008, 18:59 | Сообщение # 24
Хостинг-провайдер
Группа: I'm V.I.P.
Сообщений: 1320
Награды: 26
Город: /root
Репутация: 320
Замечания: 0%
Статус:
KaZaNOVa, можно ли вместо сообщения лично игроку:
Тебя затнкул %s на%d секунд
Было сообщение в общий чат:

%s заткнут админом на %D секунд

?
НовичеГ в павно, хз как сделать))) crazy

KaZaNOVaДата: Четверг, 21.08.2008, 19:34 | Сообщение # 25
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
Вместо:
Code
format(string, sizeof(string), " Тебя затнкул %s на%d секунд",sendername, mutetime[giveplayerid]);   
SendClientMessage(giveplayerid,COLOR_RED, string);  

Впиши:

Code
format(string, sizeof(string), " %s заткнут админом %s на %d секунд",giveplayerid,sendername, mutetime[giveplayerid]);   
SendClientMessageToAll(COLOR_RED, string);  



Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


DoctorEvilДата: Четверг, 21.08.2008, 21:19 | Сообщение # 26
Новенький
Группа: Продвинутые
Сообщений: 47
Награды: 1
Репутация: 1
Замечания: 0%
Статус:
Quote (KaZaNOVa)
DoctorEvil, что именно у тебя не работает? Какие ошибки выдает?

В том то и дело что все скомпилировалось нормально, а в игре не работает. Набираю /mute и ничего sad

Добавлено (21.08.2008, 21:19)
---------------------------------------------
Щас вроде заработало, но таймер не работает! Выставляю время, а молчанка не снимается. Даже када 0 сек выставляю, то молчанака все равно не снимается sad

KaZaNOVaДата: Четверг, 21.08.2008, 21:36 | Сообщение # 27
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
DoctorEvil, какой мод?
P.S. кинь мод в личку или ICQ, если это не ГФ или ПЕН.



Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


DoctorEvilДата: Четверг, 21.08.2008, 22:13 | Сообщение # 28
Новенький
Группа: Продвинутые
Сообщений: 47
Награды: 1
Репутация: 1
Замечания: 0%
Статус:
Это обычный GF скаченный тут
ICQ 431679414

KaZaNOVaДата: Четверг, 21.08.2008, 22:31 | Сообщение # 29
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
Ой бл*... с ГФ даже связываться не буду щас.... Ненавижу РПшки. Ладно на досуге попробую переделать под ГФ


Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


PzychyДата: Четверг, 08.01.2009, 06:14 | Сообщение # 30
Освоившийся
Группа: Продвинутые
Сообщений: 75
Награды: 2
Город: Жуковский
Репутация: 26
Замечания: 0%
Статус:
кто нибудь сделал mute на время под gf?



  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua