Начинающий
-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
1.НАЧАЛО:
В общем уже такая тема есть,но я решил сделать по своему - это намного легче и удобнее добавить к функции "тег". . Это помогает пользователям быстро определять, на какой сервер эта функция идет,чтобы понять где она работает.
2.ОСНОВНАЯ ЧАСТЬ:
1) Создаем enum-class:
public enum ModuleServerType {
NONE,
FT,
RW
}
Тут мы перечисляем типы серверов
2) Добавляем в interface который регестрирует классы новую аннотацию:
ModuleServerType serverType() default ModuleServerType.NONE;
Мы добавили новый параметр который позволяет указывать тип сервера, к которому применяется данный модуль, По умолчанию он установлен -> ModuleServerType.NONE,что означает что по дефолту стоит значение "None",т.е к что модуль не привязан к конкретному типу сервера.
3) Создаем переменную в классе "Module" (у вас может быть назван по другому,например "Function") :
ModuleServerType serverType;
и сразу в конструктор добавляем:
this.serverType = getClass().getAnnotation(ModuleRegister.class).serverType();
В данном коде мы сделали переменную "serverType" которая получает "тип" сервера из аннотации ModuleRegister (в моем случае так) класса и регестрируем в конструктор.
Так же наверно нужны цвета,верно?
Создаем в "Module" (в моем случае) классе, метод "getServerTypeColor()" который возвращает цвет, соответственному "типу" сервера.
private int getServerTypeColor(ModuleServerType serverType) {
switch (serverType) {
case FT: return ColorUtils.rgb(255, 0, 0); // Красный для FT
case RW: return ColorUtils.rgb(255, 165, 0); // Оранжевый для RW
default: return ColorUtils.rgb(255, 255, 255); // Белый по умолчанию
}
4) Интеграция в нашу Click-Gui :
Переходим в наш класс "ModuleComponent" (в моем случае так) где выводится информация о биндах,названий модулей и так далее
и пастим это:
if (module.getServerType() != ModuleServerType.NONE) {
String serverTypeText = module.getServerType().name();
int serverTypeColor = module.getServerTypeColor();
Fonts.sf_semibold[16].drawString(stack, serverTypeText, serverTypeXPosition, getY() + Fonts.sf_semibold[16].getFontHeight() - 2, Module.serverTypeColor);
}
Не забывайте что у нас разные с вами координаты,шрифты и так далее, соответственно вы должны подставить свои координаты где будет рендер.
2. Заключение...
Получаем с вами такой результат :
В этой теме я показал "упрощенную версию" как можно сделать "теги" к модулям,и подробно расписал
Спокойной ночки!
В общем уже такая тема есть,но я решил сделать по своему - это намного легче и удобнее добавить к функции "тег". . Это помогает пользователям быстро определять, на какой сервер эта функция идет,чтобы понять где она работает.
2.ОСНОВНАЯ ЧАСТЬ:
1) Создаем enum-class:
public enum ModuleServerType {
NONE,
FT,
RW
}
Тут мы перечисляем типы серверов
2) Добавляем в interface который регестрирует классы новую аннотацию:
ModuleServerType serverType() default ModuleServerType.NONE;
Мы добавили новый параметр который позволяет указывать тип сервера, к которому применяется данный модуль, По умолчанию он установлен -> ModuleServerType.NONE,что означает что по дефолту стоит значение "None",т.е к что модуль не привязан к конкретному типу сервера.
3) Создаем переменную в классе "Module" (у вас может быть назван по другому,например "Function") :
ModuleServerType serverType;
и сразу в конструктор добавляем:
this.serverType = getClass().getAnnotation(ModuleRegister.class).serverType();
В данном коде мы сделали переменную "serverType" которая получает "тип" сервера из аннотации ModuleRegister (в моем случае так) класса и регестрируем в конструктор.
Так же наверно нужны цвета,верно?
Создаем в "Module" (в моем случае) классе, метод "getServerTypeColor()" который возвращает цвет, соответственному "типу" сервера.
private int getServerTypeColor(ModuleServerType serverType) {
switch (serverType) {
case FT: return ColorUtils.rgb(255, 0, 0); // Красный для FT
case RW: return ColorUtils.rgb(255, 165, 0); // Оранжевый для RW
default: return ColorUtils.rgb(255, 255, 255); // Белый по умолчанию
}
4) Интеграция в нашу Click-Gui :
Переходим в наш класс "ModuleComponent" (в моем случае так) где выводится информация о биндах,названий модулей и так далее
и пастим это:
if (module.getServerType() != ModuleServerType.NONE) {
String serverTypeText = module.getServerType().name();
int serverTypeColor = module.getServerTypeColor();
Fonts.sf_semibold[16].drawString(stack, serverTypeText, serverTypeXPosition, getY() + Fonts.sf_semibold[16].getFontHeight() - 2, Module.serverTypeColor);
}
Не забывайте что у нас разные с вами координаты,шрифты и так далее, соответственно вы должны подставить свои координаты где будет рендер.
2. Заключение...
Получаем с вами такой результат :
В этой теме я показал "упрощенную версию" как можно сделать "теги" к модулям,и подробно расписал
Спокойной ночки!