Проверка на 2 т
|
|
TReshGolD
|
Дата: Четверг, 16.10.2014, 13:50:02 | Сообщение # 1 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
Напишите пожалуйста: Как сделать проверку на 1-2 живых террористов?
Код if (.... { // 2 террориста есть или 1 } else { // 0 или 3 }
Я новичок в sm
Сообщение отредактировал TReshGolD - Четверг, 16.10.2014, 15:51:08 |
|
| |
king(rus)
|
Дата: Четверг, 16.10.2014, 15:38:37 | Сообщение # 2 |
|
Сообщений: 109
Репутация: 2 [ +/- ]
|
|
Цитата TReshGolD ( ) Напишите пожалуйста: Как сделать проверку на 1-2 живых террористов?
if (.... { // 2 террориста есть или 1 } else { // 0 или 3 }
Я новичок в sm
Если новичок, то начинай со складывания чисел/умножение/деление и вывода их в чат.
|
|
| |
TReshGolD
|
Дата: Четверг, 16.10.2014, 15:46:36 | Сообщение # 3 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
Цитата king(rus) ( ) Если новичок, то начинай со складывания чисел/умножение/деление и вывода их в чат.
Если не хочешь помогать не засоряй тему пожалуйста
Пример лучше бы подкинул
Сообщение отредактировал TReshGolD - Четверг, 16.10.2014, 15:53:14 |
|
| |
iEx
|
Дата: Четверг, 16.10.2014, 16:21:25 | Сообщение # 4 |
|
Сообщений: 304
Репутация: 23 [ +/- ]
|
|
https://sm.alliedmods.net/api/index.php?fastload=show&id=55& https://sm.alliedmods.net/api/index.php?fastload=file&id=40& //index terrov 2 new count = GetTeamClientCount(2); if(count == 1 || count == 2) { //2 tera ili voobshe 1 } else { //ne 2 tera i ne 1.. }
Сообщение отредактировал iEx - Четверг, 16.10.2014, 16:23:05 |
|
| |
TReshGolD
|
Дата: Четверг, 16.10.2014, 17:07:02 | Сообщение # 5 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
Цитата iEx ( ) https://sm.alliedmods.net/api/index.php?fastload=show&id=55& https://sm.alliedmods.net/api/index.php?fastload=file&id=40& //index terrov 2 new count = GetTeamClientCount(2); if(count == 1 || count == 2) { //2 tera ili voobshe 1 } else { //ne 2 tera i ne 1.. }
Спасибо! Сейчас протестирую..Добавлено (16.10.2014, 17:07:02) --------------------------------------------- 2 ошибки error 010 и error 008 на 1 строчке: new count = GetTeamClientCount(2); Что делать?
|
|
| |
BarD
|
Дата: Четверг, 16.10.2014, 17:22:47 | Сообщение # 6 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
Код #include <sourcemod> #pragma semicolon 1
public OnPluginStart() { HookEvent("player_death",Death); }
public Action:Death(Handle:event, const String:name[], bool:dontBroadcast) { new ters;
for(new i=1;i<=MaxClients;i++) { if (IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i)==2) ters++; } if (ters==2) { //Тут твой код, если осталось ровно 2 тера. Можешь под своё условие настроить. } }
===============================================
Помог? Лайкни!
|
|
| |
TReshGolD
|
Дата: Четверг, 16.10.2014, 17:33:19 | Сообщение # 7 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
BarD, Спасибо
Можно как-то по другому сделать? Просто у меня:
Код public Action:ShopMenuCmd(client,args) { if(GetClientTeam(client) != 2) { PrintToChat(client, "[Jail shop] Магазин только для зеков!"); return; } else { if(.... // Тут код этот.... { PrintToChat(client, "[Jail shop] Во время LR магазин не доступен!"); } else { ShopMenuOpen(client); } } }
Чтобы если было 1-2 живых террористов писало: [Jail shop] Во время LR магазин не доступен! А вот мертвым террористам ShopMenuOpen(client);
Сообщение отредактировал TReshGolD - Четверг, 16.10.2014, 17:37:42 |
|
| |
BarD
|
Дата: Четверг, 16.10.2014, 18:08:52 | Сообщение # 8 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
Код public Action:ShopMenuCmd(client,args) { new ters; for (new i=1;i<=MaxClients;i++) { if (IsClientInGame(i)&&IsPlayerAlive(i)&&GetClientTeam(i)==2) ters++; } if(GetClientTeam(client) != 2) { PrintToChat(client, "[Jail shop] Магазин только для зеков!"); return; } else { if(ters==2) { PrintToChat(client, "[Jail shop] Во время LR магазин не доступен!"); } else { ShopMenuOpen(client); } } } Но я считаю такой вариант непрактичным, т.к. могут остаться 2 Тера, но лр не писать. И тогда магазин работать не будет, и лр не будет. На твоём месте я бы нашёл функцию проверки на начало ЛР и проверял ей. Или событие начала лр. Так будет лучше Удачи!
Сообщение отредактировал BarD - Четверг, 16.10.2014, 18:09:56 |
|
| |
TReshGolD
|
Дата: Четверг, 16.10.2014, 18:20:26 | Сообщение # 9 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
Спасибо
|
|
| |
Tokami
|
Дата: Четверг, 16.10.2014, 20:45:10 | Сообщение # 10 |
|
Сообщений: 238
Репутация: 19 [ +/- ]
|
|
Код #include <lastrequest>
public OnStartLR(PrisonerIndex, GuardIndex, LRType) { PrintToChatAll("Начался LR шоп будет закрыт"); }
|
|
| |
TReshGolD
|
Дата: Пятница, 17.10.2014, 17:56:53 | Сообщение # 11 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
Tokami, Спасибо
BarD, проблема с кодом Когда в живых 1 террорист, то магазин работает... Как сделать чтобы не работал?
|
|
| |
Tokami
|
Дата: Пятница, 17.10.2014, 20:14:30 | Сообщение # 12 |
|
Сообщений: 238
Репутация: 19 [ +/- ]
|
|
TReshGolD, зачем блочить что либо просто создай массив сделай проверку что он включен когда лр ставь false когда новый раунд true и все
Сообщение отредактировал Tokami - Пятница, 17.10.2014, 20:15:24 |
|
| |
BarD
|
Дата: Суббота, 18.10.2014, 04:59:30 | Сообщение # 13 |
|
Сообщений: 943
Репутация: 137 [ +/- ]
|
|
Вот так будет блочить, если 2 тера или меньше.
|
|
| |
TReshGolD
|
Дата: Суббота, 18.10.2014, 05:34:10 | Сообщение # 14 |
|
Сообщений: 10
Репутация: 0 [ +/- ]
|
|
BarD, Спасибо
|
|
| |
king(rus)
|
Дата: Воскресенье, 19.10.2014, 09:31:27 | Сообщение # 15 |
|
Сообщений: 109
Репутация: 2 [ +/- ]
|
|
Вы неверно поступаете. Человек должен сам понять, ибо это будет не опыт, а тупо написанный код, который он не поймёт и в дальнейшем это скажется.
|
|
| |