DENIS.P.

Использование TextDraw'ов

2 posts in this topic

Ну, это мой первый мануал, постараюсь все изложить как можно понятнее и проще.
Начнем с самого просто. 

TextDraw'ы бывают двух видов:

1.Глобальный!

2.Индивидуальный, для каждого игрока!

Допустим.

Первый вид: Глобальный вот как выглядит. 

Спойлер

TextDraw = TextDrawCreate(Float:x, Float:y, text[])

Второй вид:Индивидуальный, для каждого игрока выглядит так.

Спойлер

new PlayerText:PlayerTextDraw[MAX_PLAYERS]; 
PlayerTextDraw[playerid] = CreatePlayerTextDraw(playerid, Float:x, Float:y, text[])

В чем же разница? В потребление памяти и требование в использование.

Допустим, если мы создали глобальный TextDraw, который показывать будем всем игрокам одну и туже информацию(Будь то текст, картинка и т.д), то стоит использовать глобальный TextDraw, а если нужно допустим создать систему инвентаря, то стоит использовать уже для каждого игрока индивидуальный TextDraw, который будет отображать каждому игроку индивидуально текст, картинки и прочее.

Теперь, когда мы знаем когда и что использовать, то перейдём к самим функциям:

Функции, которые относятся к глобальному TextDraw'y:

TextDrawDestroy(Text:text) - удаляет определённый TextDraw.
TextDrawColor(Text:text, color) - устанавливает определённый цвет TextDraw'y.
TextDrawBoxColor(Text:text, color) - устанавливает определённый цвет коробки TextDraw'a.
TextDrawBackgroundColor(Text:text, color) - устанавливает определённый цвет фона TextDraw'a.
TextDrawAlignment(Text: text, alignment) - выравнивает текст по левому краю, центру и правому краю(1 - лево, 2 - центр 3 - право).
TextDrawFont(Text: text, font) - устанавливает тексту TextDraw'а указанный шрифт(Шрифты).
TextDrawLetterSize(Text: text, Float:x, Float:y) - изменяет размер букв, цифр у указанного TextDraw'a.
TextDrawTextSize(Text:text, Float:x, Float:y) - изменяет размер самого TextDraw'a.
TextDrawSetOutline(Text:text, size) - добавляет обводку TextDraw'y.
TextDrawSetShadow(Text:text, size) - добавляет тень TextDraw'y.
TextDrawSetProportional(Text:text, set) - изменяет пропорции TextDraw'a.
TextDrawUseBox(Text: text, use) - добавляет коробку TextDraw'y(1 - добавить, 0 - убрать).
TextDrawSetString(Text: text, string[]) - изменяет текст TextDraw'a(Для отображения нового текста, нужно скрыть и показать TextDraw).
TextDrawShowForPlayer(playerid, Text: text) - показывает определённому игроку TextDraw.
TextDrawHideForPlayer(playerid, Text: text) - скрывает TextDraw для определённого игрока.
TextDrawShowForAll(Text: text) - показывает TextDraw для всех игроков.
TextDrawHideForAll(Text: text) - скрывает TextDraw для всех игроков.

TextDrawSetPreviewModel(Text: text, model) - изменяет модель объекта на TextDraw'e.

(Обязательно: TextDrawUseBox должен быть включен и TextDrawFont должен быть равен "5" и в случае смены модели объекта на какую-либо другую - скрывайте и показывайте TextDraw).

PlayerTextDrawSetPreviewRot(Text:text, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fZoom) - изменяет ротацию модели у TextDraw'a(Для обновления старой ротации на новую - скрывайте и показывайте TextDraw).

TextDrawSetPreviewVehCol(Text:text, color1, color2) - изменяет цвет автомобиля на TextDraw'e(Для обновления старого цвета на новый - скрывайте и показывайте TextDraw). 
Функции, которые относятся к индивидуальным TextDraw'ам:

PlayerTextDrawDestroy(playerid, PlayerText:text) - удаляет определённый TextDraw, для указанного игрока.
PlayerTextDrawColor(playerid, PlayerText:text, color) - устанавливает определённый цвет TextDraw'y, для указанного игрока.
PlayerTextDrawBoxColor(playerid, PlayerText:text, color) - устанавливает определённый цвет коробки TextDraw'a, для указанного игрока.
PlayerTextDrawBackgroundColor(playerid, PlayerText:text, color) - устанавливает определённый цвет фона TextDraw'a, для указанного игрока.
PlayerTextDrawAlignment(playerid, PlayerText: text, alignment) - выравнивает текст по левому краю, центру и правому краю(1 - лево, 2 - центр 3 - право), для указанного игрока.
PlayerTextDrawFont(playerid, PlayerText: text, font) - устанавливает тексту TextDraw'а указанный шрифт, для указанного игрока(Шрифты).
PlayerTextDrawLetterSize(playerid, PlayerText: text, Float:x, Float:y) - изменяет размер букв, цифр у указанного TextDraw'a, для указанного игрока.
PlayerTextDrawTextSize(playerid, PlayerText:text, Float:x, Float:y) - изменяет размер самого TextDraw'a, для указанного игрока.
PlayerTextDrawSetOutline(playerid, PlayerText:text, size) - добавляет обводку TextDraw'y, для указанного игрока.
PlayerTextDrawSetShadow(playerid, PlayerText:text, size) - добавляет тень TextDraw'y, для указанного игрока.
PlayerTextDrawSetProportional(playerid, PlayerText:text, set) - изменяет пропорции TextDraw'a, для указанного игрока.
PlayerTextDrawUseBox(playerid, PlayerText: text, use) - добавляет коробку TextDraw'y, для указанного игрока(1 - добавить, 0 - убрать).
PlayerTextDrawSetString(playerid, PlayerText: text, string[]) - изменяет текст TextDraw'a, для указанного игрока(Для отображения нового текста нужно скрыть и показать TextDraw).
PlayerTextDrawShow(playerid, PlayerText: text) - показывает TextDraw определённому игроку.
PlayerTextDrawHide(playerid, PlayerText: text) - скрывает TextDraw для определённого игрока.

PlayerTextDrawSetPreviewModel(playerid, PlayerText: text, model) - изменяет модель объекта на TextDraw'e, для указанного игрока.

(Обязательно: PlayerTextDrawUseBox должен быть включен и PlayerTextDrawFont должен быть равен "5" и в случае смены модели объекта на какую-либо другую - скрывайте и показывайте TextDraw).

PlayerPlayerTextDrawSetPreviewRot(playerid, PlayerText:text, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fZoom) - изменяет ротацию модели у TextDraw'a, для указанного игрока(Для обновления старой ротации на новую - скрывайте и показывайте TextDraw).

PlayerTextDrawSetPreviewVehCol(playerid, PlayerText:text, color1, color2) - изменяет цвет автомобиля на TextDraw'e, для указанного игрока(Для обновления старого цвета на новый - скрывайте и показывайте TextDraw).

Автор:YellowFace1

CПАСИБО ЗА ВНИМАНИЕ!

2

Share this post


Link to post
Share on other sites

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Готовые решения"

Перемещена в: "Скриптинг PAWN > Уроки"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Скриптинг PAWN > Уроки", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Holmo
      By Holmo
      Доброго дня. Взял аксессуары под названием " Шар " из мода << Arizona RP >>. Вроде как вписал везде, выдаю себе в игре - но он не отображается. Что делать?
       
    • Rich_Hen
      By Rich_Hen
      Вообщем, такое дело, пишу мод с нуля. Столкнулся с такой проблемой.
       
      Имеется команда (спойлер чек), в ней проверка на администратора:
      if(Player[playerid][pAdmin] < 1) return SendClientMessage(playerid,COLOR_WHITE,AdminCMDError); Но проблема в том, что она не осуществляется. Когда ввожу эту команду в игре, мне выводит "AdminCMDError".
      Скриншот из игры:
       
      Так же хочу сказать то, что в базе данных у меня есть права администратора, прикрепляю так же код pInfo и БД:
       
      Возможно я чего-то не скинул, если есть желающие помочь - напишите в личные сообщения форума, там докину остальное.