Category:Ru/Interfaces: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
m ({{Note}} instead of {{Note:ru}})
Line 4: Line 4:
Некоторые объекты интерфейса очень важны и необходимы для функционирования игровых DLL файлов. Для их использования, наследуйте их для реализации, затем вернитесь к интерфейсу в глобальном [[pointer|указателе]] с предопределённым именем.
Некоторые объекты интерфейса очень важны и необходимы для функционирования игровых DLL файлов. Для их использования, наследуйте их для реализации, затем вернитесь к интерфейсу в глобальном [[pointer|указателе]] с предопределённым именем.


{{note:ru|Если вы попытаетесь создать интерфейс напрямую, ваш мод крашнется. Это происходит намеренно.}}
{{Note|Если вы попытаетесь создать интерфейс напрямую, ваш мод крашнется. Это происходит намеренно.}}
{{warning:ru|Важно создать все объекты, перечисленные при предоставлении интерфейса, даже если ваш мод может быть скомпилирован и запущен без одного или другого. Если вы попытаетесь убрать что-то, вы, вероятней всего, столкнётесь со странными, почти невозможными для отладки ошибками нынешних или будущих обновлений движка!}}
{{warning:ru|Важно создать все объекты, перечисленные при предоставлении интерфейса, даже если ваш мод может быть скомпилирован и запущен без одного или другого. Если вы попытаетесь убрать что-то, вы, вероятней всего, столкнётесь со странными, почти невозможными для отладки ошибками нынешних или будущих обновлений движка!}}
{{warning:ru|Ни в коем случае не изменяйте сам класс интерфейса. Вы всегда должны наследовать его, а затем возвращать.}}
{{warning:ru|Ни в коем случае не изменяйте сам класс интерфейса. Вы всегда должны наследовать его, а затем возвращать.}}

Revision as of 11:40, 21 September 2023

English (en)Deutsch (de)Русский (ru)Translate (Translate)

Интерфейсы — это C++ классы, к которым другие части движка получают доступ, пока ваш мод запущен.

Некоторые объекты интерфейса очень важны и необходимы для функционирования игровых DLL файлов. Для их использования, наследуйте их для реализации, затем вернитесь к интерфейсу в глобальном указателе с предопределённым именем.

Note.pngПримечание:Если вы попытаетесь создать интерфейс напрямую, ваш мод крашнется. Это происходит намеренно.

Template:Warning:ru Template:Warning:ru

Пример

static CInput g_Input;
IInput* input = (IInput*)&g_Input;

Тут создаются объекты IInput* input и g_Input, которые ждёт движок, помещая за ними базовый код Valve от CInput.

Вы можете изменить CInput или создать свой собственный унаследованный класс и использовать его. Но помните — только члены IInput будут доступны движку.

This category currently contains no pages or media.