Профиль
Информация Управление
Здравствуйте, уважаемый посетитель. К сожалению, Вы не были распознаны форумом, как зарегистрированный пользователь. Для полноценного использования возможностей нашего форума вам необходимо зарегистрироваться. Если вы уже зарегистрированы на форуме, то вам необходимо пройти авторизацию, используя Ваш логин и пароль. Зарегистрированные пользователи получают возможность возможность общения на нашем форуме.


[Новые сообщения · Правила форума · RSS ]
  • Страница 1 из 1
  • 1
[Tutorial] Валюта Евро € (EUR)
OKStyle Дата: Четверг, 26.06.2014, 17:06 | Сообщение # 1
Архивариус
Группа: Администраторы
Зарегистрирован: 19.02.2011
Сообщений: 125
Репутация: 8
Статус: Offline
Как-то наткнулся на тему, где скриптеры спрашивали про возможность ввода новой валюты в мод. Поскольку несколько последних заказов содержали те же требования, я решил показать один вариантов. В теме я покажу просто стилизованный текстдрав валюты (с нужной обводкой, идеально закрывает знак доллара), добавляйте цифры, данные и т.п. по своему усмотрению. Пример грамотного ввода по этой ссылке.



В начале мода или ко всем new пишем:
Код
new Text:Euro[3]; // переменные рисунка валюты


В нужном месте (при старте скрипта, мода, по команде, по нажатию клавиш и т.п.) создаём текстдравы (цвет отличается от цвета на скрине, т.к. при создании темы подобрал более адекватный в фотошопе):
Код
Euro[0] = TextDrawCreate(499.0, 77.0, "C");
TextDrawFont(Euro[0], 3);
TextDrawColor(Euro[0], 0xFFD21DFF);
TextDrawLetterSize(Euro[0], 0.54, 2.2);
TextDrawSetOutline(Euro[0], 2);

Euro[1] = TextDrawCreate(494.0, 79.0, "-");
TextDrawColor(Euro[1], 0xFFD21DFF);
TextDrawLetterSize(Euro[1], 0.76, 1.0);
TextDrawSetOutline(Euro[1], 1);

Euro[2] = TextDrawCreate(494.0, 83.0, "-");
TextDrawColor(Euro[2], 0xFFD21DFF);
TextDrawLetterSize(Euro[2], 0.76, 1.0);
TextDrawSetOutline(Euro[2], 1);


При подключении/при спавне/в нужный момент показываем игроку:
Код
for(new i = 0; i < sizeof(Euro); i++) TextDrawShowForPlayer(playerid, Euro[i]);


При выходе/при смерти/в нужный момент скрываем у игрока:
Код
for(new i = 0; i < sizeof(Euro); i++) TextDrawHideForPlayer(playerid, Euro[i]);


Текстдравы глобальные, 3 штуки.

Команда для тестов (в OnPlayerCommandText):
Код
if(strcmp(cmdtext, "/euro", true) == 0)
{
if(GetPVarInt(playerid, "Euro") == 0)
{
SetPVarInt(playerid, "Euro", 1);
for(new i = 0; i < sizeof(Euro); i++) TextDrawShowForPlayer(playerid, Euro[i]);
}
else
{
DeletePVar(playerid, "Euro");
for(new i = 0; i < sizeof(Euro); i++) TextDrawHideForPlayer(playerid, Euro[i]);
}
return 1;
}


Автор: OKStyle


 
  • Страница 1 из 1
  • 1
Поиск:

Сайт управляется системой uCoz