PDA

Просмотр полной версии : [Вопрос] Команда в опр. время



samp-ivan
09.12.2016, 17:49
Подскажите как сделать так, чтобы команду можно было выполнить в определенный промежуток времени, например с 12.00 до 23.00 ?

DeimoS
09.12.2016, 17:56
new hour;
gettime(hour, _, _);
if(!(12 <= hour <= 23))
return SendClientMessage(playerid, -1, "Команда доступна только в период с 12 до 23");

samp-ivan
09.12.2016, 22:49
А подскажи еще, как можно сделать с часу ночи например, пробовал так: if(!(12 <= hour <= 1)) и if(!(12 <= hour <= 01)) но не получается..

middlematt
10.12.2016, 01:19
А подскажи еще, как можно сделать с часу ночи например, пробовал так: if(!(12 <= hour <= 1)) и if(!(12 <= hour <= 01)) но не получается..


if (hour == 1) SendClientMessage(playerid, -1, "Час ночи");

Saibot
10.12.2016, 01:33
if (hour == 1) SendClientMessage(playerid, -1, "Час ночи");
Он же написал "с часу", а не "в час" ночи

DeimoS
10.12.2016, 04:37
А подскажи еще, как можно сделать с часу ночи например, пробовал так: if(!(12 <= hour <= 1)) и if(!(12 <= hour <= 01)) но не получается..

Ну так естественно не получится. Какое число может быть больше 12 и одновременно меньше 1? :fool:
Если нужно с 12 ночи до часа ночи, то

if(!(0 <= hour <= 1))

А если, например, с 10 вечера до 3 часов ночи, то так:

if(!(hour >= 22) && !(0 <= hour <= 3))

Но если уж совсем трудно в условия, то можно воспользоваться switch и сделать так

switch(hour)
{
case 22, 23, 0, 1, 2, 3: {}//Это время, в которое можно пользоваться командой
default:
return SendClientMessage(playerid, -1, "Команда доступна в период с 10 вечера до 3-х ночи");
}
Хоть строк и больше, но более наглядно