Начнем!
1. Ко всем переменны
new Text: Online;//Переменная текстдрава
new online;//Человек онлайн
2. К forward' ам:
forward Online();
3. В public OnPlayerConnect
TextDrawShowForPlayer(playerid,Online);//Показываем текстдрав
online++;//При коннекте к значению переменной прибавляем единицу
Online();//Вызываем паблик, который изменит текстдрав
4. В public OnPlayerDisconnect
online--;//Убираем единицу
Online();//Вызываем паблик, который изменит текстдрав
5. В public OnGameModeInit
Online = TextDrawCreate(25.000000, 434.000000, "Online");//Сам текстдрав
TextDrawLetterSize(Online,0.3,1.3);//размер шрифта
TextDrawFont(Online,3);//стиль шрифта
TextDrawColor(Online,COLOR_WHITE);//цвет
TextDrawSetOutline(Online,1);
6. Создаем новый public
public Online()//Будет менять текстдрав
{
new string[32];
format(string, 32, "Online %d", online);
TextDrawSetString(Online,string);
for (new i=0; i < MAX_PLAYERS; i++)
TextDrawShowForPlayer(i,Online);
return 1;
}
При желании можно поменять цвет, размер, позицию и текст!
Как это работает: Игрок заходит на сервер, значение переменной становится на единицу больше. Значение переменной равнозначно количеству игроков онлайн, так как при коннекте она прибавляется на 1, а при дисконнекте убавляется на 1. Также при коннекте сделан вызов паблика Online, в результате которого это все и работает. Сам паблик только меняет текст Textdraw' а и показывает его игрокам. Принцип работы, думаю, описан!
Автор: Max_Mister
1. Ко всем переменны
new Text: Online;//Переменная текстдрава
new online;//Человек онлайн
2. К forward' ам:
forward Online();
3. В public OnPlayerConnect
TextDrawShowForPlayer(playerid,Online);//Показываем текстдрав
online++;//При коннекте к значению переменной прибавляем единицу
Online();//Вызываем паблик, который изменит текстдрав
4. В public OnPlayerDisconnect
online--;//Убираем единицу
Online();//Вызываем паблик, который изменит текстдрав
5. В public OnGameModeInit
Online = TextDrawCreate(25.000000, 434.000000, "Online");//Сам текстдрав
TextDrawLetterSize(Online,0.3,1.3);//размер шрифта
TextDrawFont(Online,3);//стиль шрифта
TextDrawColor(Online,COLOR_WHITE);//цвет
TextDrawSetOutline(Online,1);
6. Создаем новый public
public Online()//Будет менять текстдрав
{
new string[32];
format(string, 32, "Online %d", online);
TextDrawSetString(Online,string);
for (new i=0; i < MAX_PLAYERS; i++)
TextDrawShowForPlayer(i,Online);
return 1;
}
При желании можно поменять цвет, размер, позицию и текст!
Как это работает: Игрок заходит на сервер, значение переменной становится на единицу больше. Значение переменной равнозначно количеству игроков онлайн, так как при коннекте она прибавляется на 1, а при дисконнекте убавляется на 1. Также при коннекте сделан вызов паблика Online, в результате которого это все и работает. Сам паблик только меняет текст Textdraw' а и показывает его игрокам. Принцип работы, думаю, описан!
Автор: Max_Mister
Последнее редактирование модератором: