Шаг 3: настройка в плагине
Вот мы и подошли к финалу - настройка худа в плагине! Сразу оговорюсь, что данная статья рассчитана на тех, кто немного понимает в скриптинге.
Для начала настроим видимость. Для этого сделаем наш худ изначально выключенным.
<visible> &false; </visible>
Теперь включим его в нужном в плагине. Например, хочу, чтобы худ работал в режиме игры, и отключался в любом меню (инвентарь, торговля и т.д.). Для этого воспользуемся командой SetUIFloat (требует NVSE)
Begin GameMode if bVisible Let bVisible := 0 SetUIFloat "HUDMainMenu/CGyourPoints/visible" 1 ; включаем endif...Begin MenuMode if bVisible == 0 Let bVisible := 1 SetUIFloat "HUDMainMenu/CGyourPoints/visible" 0 ; отключаем endif...
В данном примере включается и отключается худ целиком, но можно управлять отдельными частями, например:
SetUIFloat "HUDMainMenu/CGyourPoints/CGTestLabel/visible" 1 ; включаем только блок CGTestLabel
Ну что ж, с видимостью разобрались. Как же нам настраивать значения/текст? Здесь к команде SetUIFloat присоединяется команда SetUIString. Первая позволяет выставлять числа, вторая строку в целом. Например, у нас уже есть текст "Ваши очки:", и мы хотим правее выставить число:
SetUIFloat "HUDMainMenu/_CGYourPoints" 6 ; на экране появится "6"SetUIFloat "HUDMainMenu/_CGYourPoints" Ypoints ; на экране появится значение переменной YPoints
При этом в xml файле у нас должна быть строка
<string><copy src="io()" trait="_CGYourPoints"/></string>
Со строкой всё тоже самое:
SetUIString "HUDMainMenu/_CGCurStValue" "Come Out Roll"; Come Out Roll - наша строка, в моём случае этап игры
При помощи этих команд и команды IsKeyPressed также можно настроить позицию худа, но мне это не нужно.
Итак, подведём итоги. Чего мы не научились:
- Двигать наш худ (хотя все данные по этому поводу я дал)
- Добавлять картинки (всё тоже самое, что и с текстом! Картинки должны быть в формате .dds)
- Возможно ещё что-то, я уже не помню
Также хочу оставить вам мой худ и полезные ссылки:
Pip-Pong - худ файл читается очень легко, можно почерпнуть информацию про картинки.
FPS Counter - очень простой мод. Код легко читается, можно почерпнуть информацию о движении худа.
Fallout2AM - человек, который мне очень помог. Можно задать вопрос, только не говорите, что пришли от меня, я итак уже отнял кучу времени у человека
Мой худ:
<_CasinoGames_Version>1.0</_CasinoGames_Version><rect name="CGyourPoints"> <id> &noglow_branch; </id> <systemcolor>&hudmain;</systemcolor> <visible> &true; </visible> <locus>&true;</locus> <text name="CGTestLabel"> <font> 7 </font> <x> 10</x> <y> <copy src="screen()" trait="height"/> <sub src="me()" trait="height"/> <div>2</div> </y> <string>Ваши очки: </string> </text> <text name="CGTestValue"> <font> 7 </font> <x> <copy src="sibling(CGTestLabel)" trait="x"/> <add>150</add> </x> <y> <copy src="screen()" trait="height"/> <sub src="me()" trait="height"/> <div>2</div> </y> <string> <copy src="io()" trait="_CGYourPoints"/> </string> </text> <text name="CGCurSt"> <font> 7 </font> <x> 10</x> <y> <copy src="screen()" trait="height"/> <sub src="me()" trait="height"/> <sub> 150 </sub> </y> <string>Текущий этап: </string> </text> <text name="CGCurStValue"> <font> 7 </font> <x> <copy src="sibling(CGCurSt)" trait="x"/> <add>190</add> </x> <y> <copy src="sibling(CGCurSt)" trait="y"/> </y> <string> <copy src="io()" trait="_CGStage"/> </string> </text> <text name="CGBet"> <font> 7 </font> <x> 10</x> <y> <copy src="sibling(CGCurSt)" trait="y"/> <sub> 35 </sub> </y> <string>Ваша ставка: </string> </text> <text name="CGBetValue"> <font> 7 </font> <x> <copy src="sibling(CGBet)" trait="x"/> <add>180</add> </x> <y> <copy src="sibling(CGBet)" trait="y"/> </y> <string> <copy src="io()" trait="_CGBet"/> </string> </text> <text name="CGExit"> <font> 7 </font> <x><copy src="screen()" trait="width"/> <sub>200</sub> </x> <y> <copy src="sibling(CGCurSt)" trait="y"/> </y> <string>Q) Выйти</string> </text> <text name="CGDoBet"> <font> 7 </font> <x><copy src="screen()" trait="width"/> <sub>200</sub> </x> <y> <copy src="sibling(CGCurSt)" trait="y"/> <sub>35</sub> </y> <string>A) Сделать ставку</string> </text> <text name="CGDoThrow"> <font> 7 </font> <x><copy src="screen()" trait="width"/> <sub>200</sub> </x> <y> <copy src="sibling(CGCurSt)" trait="y"/> <sub>70</sub> </y> <string>W) Бросить кости</string> </text></rect>
[sharedmedia=videos:videos:90]
Всем удачи! Если будут вопросы/проблемы - задавайте, с радостью помогу.
- 1
0 Комментариев
Рекомендуемые комментарии
Комментариев нет
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти