An2d1s 0 Опубликовано 15 июня, 2019 Здравствуйте, подскажите пожалуйста, как сделать, чтобы к примеру какой-то игрок (предположим администратор) вводил команду: /start. И у всех игроков на сервере появлялся какой-то текстдрав, который они могли закрыть. Заранее спасибо Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 15 июня, 2019 (изменено) new Text:TD[MAX_PLAYERS]; public OnGameModeInit() { TD = TextDrawCreate(240.0,580.0,"TextTD"); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmd, "/start", true) == 0) { for(new i = 0; i <MAX_PLAYERS; i++) { TextDrawShowForPlayer(i, TD); } return 1; } return 0; } Использовать цикл в команде и функцию создания TD. Все очевидно же. Пример показан с использованием стандартного командного процессора, но не составит труда подумать и подогнать под любой другой. Вообще я бы не рекомендовал создавать всем игрокам из за лимита TD в мультиплеере. Изменено 15 июня, 2019 пользователем Web Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
16Shadows 101 Опубликовано 16 июня, 2019 Не лучше ли будет использовать функцию TextDrawShowForAll(Text:text), чем собирать велосипед самому? Или у неё есть какие-то недокументированные недочёты? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 16 июня, 2019 2 минуты назад, 16Shadows сказал: Не лучше ли будет использовать функцию TextDrawShowForAll(Text:text), чем собирать велосипед самому? Или у неё есть какие-то недокументированные недочёты? чет я забыл про нее, думал такая функция есть только для игрока. По идее с использованием foreach"а с моим вариантом можно выйграть в скорости Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты