 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Попробуем сделать /mute на секунды
| |
| HELKERN | Дата: Суббота, 19.06.2010, 10:46 | Сообщение # 16 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| if(strcmp(cmd, "/mutet", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "*Используйте: /mutet [id] [время]");} new playa=ReturnUser(tmp); if(PlayerInfo[playerid][pAdmin] >= 1) { if(IsPlayerConnected(playa)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp))return SendClientMessage(playerid, COLOR_GRAD2, "*Èñïîëüçóéòå: /mutet [id] [время]");} new second=strval(tmp); if(second<1)return SendClientMessage(playerid, COLOR_GRAD2, "íåâåðíîå çíà÷åíèå"); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[playa][pMuted]=1; mutedsecond[playa]=second; format(string, sizeof(string), "AdmCmd: %s замутил %s на %d секунд",giveplayer ,sendername,second); ABroadCast(COLOR_LIGHTRED,string,1); return 1; } } return SendClientMessage(playerid, COLOR_GRAD1, " вы не админ"); } В начало new mutedsecond[MAX_PLAYERS]; В функцию добавьте public SetPlayerUnjail(playerid) { ... if(PlayerInfo[playerid][pMuted]==1) { mutedsecond[playerid]--; if(mutedsecond[playerid]==0) { PlayerInfo[playerid][pMuted]=0; return SendClientMessage(playerid, COLOR_GRAD1, "Âðåìÿ ìîë÷àíêè âûøëî"); } } ... } Добавим в public OnPlayerConnect(playerid) mutedsecond[playerid]=0; пробуйте, только время, на которое заткнули игрока не будет сохраняться в аккаунте и если он перезайдет, то время сбросится и он будет без молчанки. Что бы время сохранялось в аккаунте создайте новую строку в файле, по подобию с pMuted Я не тестировал, но должно работать)
|
| |
|
|
| Many | Дата: Суббота, 19.06.2010, 17:06 | Сообщение # 17 |
|
Новенький
Группа:
Пользователи
Сообщений: 60
Награды: 0
Город: Гренландия
Репутация: -14
Замечания: 0%
Статус: 
| Quote (HELKERN) if(strcmp(cmd, "/mutet", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "*Используйте: /mutet [id] [время]");} new playa=ReturnUser(tmp); if(PlayerInfo[playerid][pAdmin] >= 1) { if(IsPlayerConnected(playa)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp))return SendClientMessage(playerid, COLOR_GRAD2, "*Èñïîëüçóéòå: /mutet [id] [время]");} new second=strval(tmp); if(second<1)return SendClientMessage(playerid, COLOR_GRAD2, "íåâåðíîå çíà÷åíèå"); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[playa][pMuted]=1; mutedsecond[playa]=second; format(string, sizeof(string), "AdmCmd: %s замутил %s на %d секунд",giveplayer ,sendername,second); ABroadCast(COLOR_LIGHTRED,string,1); return 1; } } return SendClientMessage(playerid, COLOR_GRAD1, " вы не админ"); } В начало new mutedsecond[MAX_PLAYERS]; В функцию добавьте public SetPlayerUnjail(playerid) { ... if(PlayerInfo[playerid][pMuted]==1) { mutedsecond[playerid]--; if(mutedsecond[playerid]==0) { PlayerInfo[playerid][pMuted]=0; return SendClientMessage(playerid, COLOR_GRAD1, "Âðåìÿ ìîë÷àíêè âûøëî"); } } ... } Добавим в public OnPlayerConnect(playerid) mutedsecond[playerid]=0; пробуйте, только время, на которое заткнули игрока не будет сохраняться в аккаунте и если он перезайдет, то время сбросится и он будет без молчанки. Что бы время сохранялось в аккаунте создайте новую строку в файле, по подобию с pMuted Я не тестировал, но должно работать) Посмотри, я просто непонимаю, но помоему тут где то скобочка недоставленна или что - то не так)
[img]http://monitoring.sangta.ru/userbar-83.69.226.239:7888.jpg[/img]
|
| |
|
|
| HELKERN | Дата: Суббота, 19.06.2010, 20:24 | Сообщение # 18 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| if(strcmp(cmd, "/mutet", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "*Используйте: /mutet [id] [время]"); new playa=ReturnUser(tmp); if(PlayerInfo[playerid][pAdmin] >= 1) { if(IsPlayerConnected(playa)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp))return SendClientMessage(playerid, COLOR_GRAD2, "*Èñïîëüçóéòå: /mutet [id] [время]"); new second=strval(tmp); if(second<1)return SendClientMessage(playerid, COLOR_GRAD2, "íåâåðíîå çíà÷åíèå"); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[playa][pMuted]=1; mutedsecond[playa]=second; format(string, sizeof(string), "AdmCmd: %s замутил %s на %d секунд",giveplayer ,sendername,second); ABroadCast(COLOR_LIGHTRED,string,1); return 1; } } return SendClientMessage(playerid, COLOR_GRAD1, " вы не админ"); } В начало new mutedsecond[MAX_PLAYERS]; В функцию добавьте public SetPlayerUnjail(playerid) { ... if(PlayerInfo[playerid][pMuted]==1) { mutedsecond[playerid]--; if(mutedsecond[playerid]==0) { PlayerInfo[playerid][pMuted]=0; return SendClientMessage(playerid, COLOR_GRAD1, "Âðåìÿ ìîë÷àíêè âûøëî"); } } ... } Добавим в public OnPlayerConnect(playerid) mutedsecond[playerid]=0; Пробуй
|
| |
|
|
| Interpol | Дата: Суббота, 19.06.2010, 21:32 | Сообщение # 19 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 5358
Награды: 77
Город: НеБаку
Репутация: 3795
Замечания: 20%
Статус: 
| мб хватит чужие мануалы под себя подтягивать?
|
| |
|
|
| Many | Дата: Суббота, 19.06.2010, 21:40 | Сообщение # 20 |
|
Новенький
Группа:
Пользователи
Сообщений: 60
Награды: 0
Город: Гренландия
Репутация: -14
Замечания: 0%
Статус: 
| Так же) Типо где- то недоставленна {}
[img]http://monitoring.sangta.ru/userbar-83.69.226.239:7888.jpg[/img]
|
| |
|
|
| HELKERN | Дата: Воскресенье, 20.06.2010, 08:40 | Сообщение # 21 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| Quote (Karleon) мб хватит чужие мануалы под себя подтягивать? не вижу в этой теме не одного мануала Quote (Many) Так же) Типо где- то недоставленна {} ну значит посмотри по внимательнее и посматри где лишняя или недостающая
|
| |
|
|
| Many | Дата: Воскресенье, 20.06.2010, 11:50 | Сообщение # 22 |
|
Новенький
Группа:
Пользователи
Сообщений: 60
Награды: 0
Город: Гренландия
Репутация: -14
Замечания: 0%
Статус: 
| А многоточия (.....) что означают в коде?
[img]http://monitoring.sangta.ru/userbar-83.69.226.239:7888.jpg[/img]
|
| |
|
|
| _LexA_ | Дата: Воскресенье, 20.06.2010, 12:12 | Сообщение # 23 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус: 
| Quote (Many) А многоточия (.....) что означают в коде код в твоем паблике
|
| |
|
|
| HELKERN | Дата: Воскресенье, 20.06.2010, 16:18 | Сообщение # 24 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| Quote (Many) А многоточия (.....) что означают в коде? всё, что там присутствует Добавлено (20.06.2010, 16:18) --------------------------------------------- ещё поправка: в SetPlayerUnjail нет аргумента playerid, поэтому код Code if(PlayerInfo[playerid][pMuted]==1) { mutedsecond[playerid]--; if(mutedsecond[playerid]==0) { PlayerInfo[playerid][pMuted]=0; return SendClientMessage(playerid, COLOR_GRAD1, "Âðåìÿ ìîë÷àíêè âûøëî"); } } следует вставить после цикла и проверки на присутствие Code for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { и заменить все playerid на i Code if(PlayerInfo[i][pMuted]==1) { mutedsecond[i]--; if(mutedsecond[i]==0) { PlayerInfo[i][pMuted]=0; return SendClientMessage(i, COLOR_GRAD1, "Âðåìÿ ìîë÷àíêè âûøëî"); } }
Сообщение отредактировал HELKERN - Воскресенье, 20.06.2010, 16:20 |
| |
|
|
|
 |
|
 | |
| |
|