Урок Библиотека для замены стандартных тултипов на кастомные

HappyFeedFriends

Друзья CG
14 Авг 2017
540
32
Проект
Battle Heroes Arena
Всем привет!

Создал небольшой скриптик для замены дотовских тултипов способностей на кастомные.
Ссылочка на github - https://github.com/HappyFeedFriends/DotaAbilityTooltip

- Нативная поддержка typescript из коробки


Ниже описание на русском.
=====================================

Описание

Небольшой скрипт, позволяющий заменить стандартные всплывающие подсказки способностей в dota 2 на пользовательские.



Подготовка

1. Установить Node.js (подойдёт LTS версия)

2. Установить Vs Code



Начало

Вариант 1

1. Открываем терминал в Vs Code (обычно Ctrl+Shift+`)

2. Устанавливаем пакет (пишем в открывшемся терминале команду) npm i dota-ability-tooltip

3. Там же вводим команду npm run build, после этого у нас сгенерируется файл build/index.js

4. Копируем этот файл build/index.js в нашу панораму panorama/scripts...

5. Подключаем кастомный тултип index.js в XML

Код:
 <scripts>

        <!-- Included JS script files go here -->

        <include src="file://{resources}/scripts/custom_game/index.js" />

    </scripts>



    <script>

        const config = {

            xmlTooltip: 'TOOLTIP PATH'

        }

        AbilitiesTooltipInject(config)

    </script>

6. Готово



Вариант 2

1. Открываем терминал в Vs Code (обычно Ctrl+Shift+`)

2. Устанавливаем пакет (пишем в открывшемся терминале команду) npm i dota-ability-tooltip

3. Импортируем метод registerAbilitiesTooltip из пакета. Пример тут



Для разработчиков
1. Запустив команду npm run dev, вы создадите у себя кастомку в рабочими тултипами. Это чтобы вы сами смогли поковырять и посмотреть чего и как



Параметры

Код:
interface TooltipConfig {

    // Функция которая отображает кастомный тултип

    // Верните true чтобы отобразить кастомный тултип

    // Не обязательно 

    isShown?: (abilityIndex: AbilityEntityIndex) => boolean;

    // Путь к вашему XML файлу кастомного тултипа

    // @example "file://{resources}/layout/custom_game/tooltips/towers_tooltip.xml"

    xmlTooltip: string;

    // Ивент на отображение кастомного тултипа

    // Не обязательно 

    onShown?: (parentPanel: Panel, abilityEntityIndex: AbilityEntityIndex) => void;

}



В будущем

Добавление тултипов для предметов



Содержание

[packages/DotaAbilityTooltip] - source code
[game | content] - for only development
[example] - example
 
  • Нравится
Реакции: vulkantsk и EndBringer

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,137
196
www.dotabuff.com
Проект
Roshan defense
Добавь картинок, как это будет выглядеть.
До - после.
 

EndBringer

Самый "везучий" кастомкодел
17 Мар 2019
70
16
steamcommunity.com
  • Вооу
Реакции: vulkantsk
Реклама: