что такое ивент в майнкрафте
Что такое ивент в майнкрафте
Перейдём к вопросу актуальности поднимаемого вопроса и тут я выделяю три основные проблемы: замкнутость организационного состава, бессистемность судейского аппарата и частое недопонимание со стороны игроков.
В данной теме не будет переходов на личности, даже не будет вымышленных персонажей, так как это все таки руководство, а не бугурт-тред. Данная тема является сугубо моим личным видением того, как должно все происходить, а значит, что это вполне можно назвать имхо-гайдом. Давайте уже приступим к разбору всех элементов по пунктам.
Игроки приходят и уходят, но все всё равно возвращаются. Этим блоком я намереваюсь дать общую базу по организации ивентов для тех игроков, кто хочет, но так и не начал, и для тех, кто уже пробует, но считает, что получается недостаточно хорошо.
Сразу уточню, что если вы желаете быть организатором в рамках собственного сообщества, то без группы EventModer получать призы для проведения ивентов будет затруднительно.
Мой первый ивент проводился сугубо на голд мэра и строителей спавна Guest. Думаю, если вы правда загорелись данной деятельностью, то трудности финансирования далеко не самая большая головная боль.
Имейте в виду, что труд организатора предполагает, что вы должны гореть идеей продвижения ивентов, вам должно нравиться заниматься этим. Организатору положено обладать многими социальными качествами, так как он занимается «развлечением» народа. Если уверены, что социально открытый образ жизни вам не характерен, то попробуйте себя в качестве судьи, где это не так важно.
// сюда пишем вашу папку
package ru.Stebbilust.test;
import org.bukkit.Bukkit;
import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin implements Listener < // Теперь мы следим за событиями
public void onEnable() <
Bukkit.getServer().getPluginManager().registerEvents(this, this); // регестрируем эвенты в этом классе
getLogger().info(«Hello. «);
>
public void onDisable() <
getLogger().info(«Bye. «);
>
@EventHandler
// Пишем перед каждым эвентом
public void onPlayerJoin(PlayerJoinEvent e) < // Когда заходит игрок то происходит.
Player p = e.getPlayer(); // Передаем переменной p игрока, который зашел
p.sendMessage(ChatColor.BLUE+»Привет»); // Пишем игроку сообщение «Привет» синим цветом
p.playSound(p.getLocation(), Sound.BLOCK_ANVIL_FALL, 1, 1); // Проигрываем игроку звук
>
>
Теперь экспортируем плагин(читаем об этом в предыдущем гайде),
и теперь мы при заходе на сервер видим:
[Туториал] Работа с событиями (Events)
keelfy
Решил сделать отдельную тему для моего перевода зарубежного туториала.
(моя основная тема).
Много вопросов связаны с событиями, хотел бы их урезать на корню одной темой.
Также даже бывалые моддеры может что-то полезное узнают, например, как работать с приоритетами событий.
Иностранный оригинал туториала сделал: coolAlias
Исходник урока можно найти в теме со списком всех моих уроков.
Об ошибках, вопросах и предложениях о переводе писать сюда: ВК или в ЛС этого форума.
Если вы хотите изменить любую стандартную реакцию Minecraft’а на какое либо действие, то применяйте обработчик событий. В нем есть События Игрока (Player Events), События Живых Существ (Living Events), События Предметов (Item Events), События Мира(World Events), Событие Генерации Мира (TerrainGenEvents), События Вагонетки (Minecart Events). и многое другое. Так что вы можете сделать что-то невероятное, применяя события. Лично я предпочитаю применять EventHandler, вместо TickHandler’а. Так как многие вещи в TickHandler’е нужно писать самостоятельно, тогда как в EventHandler’e они уже сделаны.
Регистрируйте ваш обработчик событий через EVENT_BUS в методах ‘load’ или ‘postInit’ вашего главного класса мода. Эта часть является одинаковой для 1.6 и 1.7, дополнительная информация в конце туториала.
Это было легко, но пока ничего не делайте. Переходим к части 3.
Выберите нужное вам событие из MinecraftForge, и добавьте его в свой EventHandler (обработчик событий) путем создания нового метод и установки события (Event’а) в качестве параметра метода.
1.6: Используйте аннотацию «@ForgeSubscribe». Она вызывает событие в нужный момент.
1.7+: Используйте аннотацию «@SubscribeEvent». Она вызывает событие в нужный момент.
Никогда, я повторю, никогда НЕ изменяйте классы форджа. Также, вам не требуется создание класса, унаследованного от класса события.
События Форджа автоматически встраиваются в ванильный код, но скажем вы сделали свой лук и хотите использовать события ArrowNock и ArrowLoose? Вам нужно вставить их и зарегистрировать в шине событий в коде предмета.
Выберите нужное вам событие из MinecraftForge, и добавьте его в свой EventHandler (обработчик событий) путем создания нового метод и установки события (Event’а) в качестве параметра метода.
1.6: Используйте аннотацию «@ForgeSubscribe». Она вызывает событие в нужный момент.
1.7+: Используйте аннотацию «@SubscribeEvent». Она вызывает событие в нужный момент.
Никогда, я повторю, никогда НЕ изменяйте классы форджа. Также, вам не требуется создание класса, унаследованного от класса события.
Показанный шаблон подходит для любого метода с событием, который вы захотите сделать. Название метода делайте любое, но не забывайте про правильное название события. Доступ к переменным событий можно получить по примеру ‘event.variableName’.
Заметьте, что приоритеты работают одинаково как в 1.6.х, так и в 1.7.х, отличие лишь в том, что аннотация меняется с @ForgeSubscribe на @SubscribeEvent. Приоритет дает возможность определять обработчикам понимать в каком порядке читать слушателей событий. Слушатель событий это метод с аннотацией @ForgeSubscribe (или @SubscrubeEvent для 1.7+) и если данный метод был зарегистрирован в MinecraftForge EVENT_BUS. Когда вызывается множество одинаковых событий, игра выбирает какой слушатель событий (метод с событием) будет вызван первым. Это определяется по порядку слушателя в коде или по выставленному приоритету. Это может быть применено среди отменяющих событий. Одно и тоже событие может быть вызвано множество раз из разных слушателей, с разными иминами и в разных обработчиках:
Если два слушателя имеют одинаковые приоритеты, то они так же вызываются по порядку регистрации в коде. Для решения этого, слушатели могут быть помещены в разные обработчики (EventHandler) зарегистрированные в нужном порядке:
События с аннотацией @Cancelable имеют особый эффект при отмене. Если событие отменено последующие слушатели с подобным событием не будут обрабатываться, пока не будет поставлена специальная аннотация:
Благодаря контролированию порядка, в котором вызываются слушатели, можно избежать возобновления события, отмененного в другом слушателе. Хотя и бывают особые обстоятельства, в которых приходится применять другие меры, дабы избежать логических ошибок.
Теперь вы можете поиграться со слушателями событий и переменными событий, чтобы понять что и когда вызывается, но добавлю предупреждающее словечко: многие события могут быть вызваны только на ОДНОЙ из сторон (клиент / сервер), так что если что-то работает не так, как задумано, проверьте на какой стороне может работать событие. Самый простой способ проверить вызывается ли метод, это поставить в начале каждого метода оповещатель в консоль об успешном выполнении:
ВАЖНО: Последующие события из 1.6.х; многие из них не изменились в новых версиях, но есть и поменявшиеся. Всегда заглядывайте в пакет net.minecraftforge.event для просмотра доступных событий, доступных в версии, на который вы пишите модификацию.
1. ArrowNockEvent
Параметры: EntityPlayer player, ItemStack result
Обычно вызывается из ‘onItemRightClick’.
Применение: Т.к. событие отменяемое, вы можете при несоблюдении условий (например, нет стрел в инвентаре) прекратить прицеливание из лука.
3. EntityConstructing
Параметры: Entity entity
Вызывается с каждым объектом, если его конструктор вызван.
Применение: Полезен, если вам нужно добавить расширенные свойства (ExtendedEntityProperties).
4. EntityJoinWorldEvent
Параметры: Entity entity, World world
Вызывается когда любое существо попадает в мир первый раз.
Применение: Полезен для синхронизации расширенных свойств (ExtendedEntityProperties), также для выдачи предметов при первом входе игрока и т.п.
5. LivingUpdateEvent
Параметры: EntityLivingBase entity
Вызывается каждый тик в начале метода onUpdate() сущности.
Применение: Скорее всего, это самое полезное событие. Вы можете позволить игроку летать, если он держит определенный предмет
или одет в броню, вы можете изменить скорость падения игрока, вы можете добавить эффект зелья и многое другое, что сможете представить.
Это и вправду полезное событие.
6. LivingDropsEvent
Параметры: EntityLivingBase entity, DamageSource source, ArrayList drops, int lootingLevel, boolean
recentlyHit, int specialDropValue
Вызывается когда сущность умирает и выбрасывает предметы.
Применение: Удобен если вы хотите изменить дроп с ванильных мобов или добавить особый дроп, если вы убиваете предметом
из своего мода. Вы конечно можете удалить выпадающие предметы вообще. Полезно.
7. LivingFallEvent
Параметры: EntityLivingBase entity, float distance
Вызывается, когда сущность касается земли после падения.
ОБРАТИТЕ ВНИМАНИЕ: Это событие не вызывается в творческом режиме; PlayerFlyableFallEvent вместо него.
Применение: Отменяем, так что ‘event.setCanceled(true)’ отключается обработку падения.
Вы можете изменить высоту падения, но запомните, что событие срабатывает ТОЛЬКО при касании. Если хотите
изменить высоту падения в определенных условия, лучше применить LivingUpdateEvent.
Также, убедитесь что изменяете ‘event.distance’, а не ‘entity.fallDistance’, иначе вы не измените исход падения.
8. LivingJumpEvent
Параметры: EntityLivingBase entity
Вызывается всегда, когда сущность прыгает.
Применение: Полезно для ‘entity.motionY += 10.0D’. Просто попробуйте.
9. LivingAttackEvent
Параметры: EntityLivingBase entity, DamageSource source, float ammount
Вызывается, когда сущность атакует.
Применение: Отменяемо. Здесь вы можете сделать предварительную обработку атаки перед событием LivingHurtEvent. Информация о
источнике атаки находится в DamageSource, так что вы можете изменить нужные вам параметры урона. Изменения
равнозначны таким же в событии LivingHurtEvent, но здесь сделаны они будут раньше.
10. LivingHurtEvent
Параметры: EntityLivingBase entity, DamageSource source, float ammount
Вызывается, когда сущность ранят.
Применение: Супер полезное событие, если вам нужно сделать броню которая будет оборонять от огненного урона, увеличивать
урон от магии и т.д.
12. EntityInteractEvent
Параметры: EntityPlayer player, Entity target
Вызывается, когда игрок жмет ПКМ по существу.
Применение: Вы можете сделать много интересного с применением этого события. Одним из применений может оказаться сбор молока в ваше ведро.
13. EntityItemPickupEvent
Параметры: EntityPlayer player, EntityItem item
Вызывается, когда игрок поднимает предмет
Применение: Это полезное событие для тех предметов, которые должны как-то обрабатываться при подборе;
например, вы можете сделать что-то на подобие сфер опыта, сфер маны, которые восстанавливают ману, при подборе их с земли.
14. HarvestCheck
Параметры: EntityPlayer player, Block block, boolean success
Вызывается в момент, когда игрок сломал блок, но дроп еще не выпал
Применение: Может компоноваться с событием BreakSpeed, это, пожалуй, лучший способ изменить шахтерское ремесло.
Что показали на Minecraft Live 2021
На трансляции показали подробности следующих обновлений игры и многое другое. Краткий рекап — в этом посте.
Запись трансляции можно посмотреть на официальных каналах Minecraft на YouTube, Twitch и Facebook.
За неделю до ивента нам показали мобов, за которых будем голосовать. Подробнее о них можно почитать тут. Кратко:
Голосование будет проходить на странице Minecraft в Twitter.
В 18:25 начинается пре-шоу, которое нам не интересно, и которое мы скипаем. Ждём самого ивента!
Начали со второй части обновления «Caves & Cliffs», с их слов — самое большое обновление за всю игру.
Первый важный анонс — фичи биома Deep Dark(а это моб Warden и Skulk Sensor) переносятся на обновление после Caves & Cliffs, т.е. на 1.19. О нём будут говорить позже.
Показали миры, которые доступны в новой генерации.
Показали, как можно будет конвертировать свой старый мир в 1.18. Новые биомы в старых мирах появятся на высоте ниже 0, и заместят бедрок.
Генераторы Java и Bedrock почти уравнили, и один сид будет генерировать тот же ландшафт на двух изданиях. Это уже можно увидеть в бетах/снапшотах.
Версия 1.18 уже почти готова, и будет выпущена через месяц-два.
С ноября версии Java и Bedrock будут доступны в Xbox Game Pass для ПК.
The Mob Vote is open! It’s time pick your favorite: Glare, Allay or Copper Golem!
Про мобов в очередной раз рассказал Джеб.
Ииии… Первый тур начался!
Говорим с Ларой де Лоуренс, лид-гейм-дизайнером Minecraft Dungeons.
Показали Seasonal Adventures, этакий season-pass для Dungeons. Выполняете ежедневные\еженедельные задания, получаете поинты, продвигаетесь по уровням и получаете реварды. Есть бесплатный путь, есть платный(буквально season-pass). Можно будет возвращаться назад по сезонам, если вы что-то пропустили. Из ревардов — flairs, скины, плащи и питомцы. Релиз — эти праздники.
Также показали систему башен, где можно гриндить уровни.
In third place it’s the Glare, we guess you aren’t as afraid of the dark as we are? That leaves the Allay and the Copper Golem going head-to-head in the final round!
Vote for your winner now!
А тем временем первый тур закончился, Glare в пролёте. Голосование второго тура началось! Голосуем тут.
Обновление дичи. Неожиданно.
Первое — детали биома Deep Dark. Новый данж — Deep Dark Cities.
Новые блоки, связанные с Скалком. Skulk Catalyst — блок, который спавнит сенсоры, если рядом убивается моб, количество зависит от количества опыта, выпавшего с него. Рядом с ними генерируется блок скалка.
Skulk Shrieker — блок, который при нахождении рядом игрока создаёт страшный звук и даёт эффект темноты.
Дальше по расписанию — обновление болота, показывают то, что и на прошлом голосовании биомов.
Мангровое дерево добавит новую древесину в игру, и будеть иметь свой лес — Мангровое болото.
Из нового — грязь(которая не земля), которая может превратиться в глину, если стоит на сталактите. Так же показали кирпичи из них же.
И так же светлячки, которые дают неплохой эмбиент.
Лягушки будут иметь несколько вариантов в разных биомах. Детскую версию лягушек сделали головастиками.
The Wild Update выйдет в следующем году.
И окончательные результаты голосования. Победитель — Allay! Моб будет добавлен в обновлении 1.19.
И на этом всё! Что вы скажете по поводу этого ивента?
Первый важный анонс — фичи биома Deep Dark(а это моб Warden и Skulk Sensor) переносятся на обновление после Caves & Cliffs, т.е. на 1.19. О них будут говорить позже.
Серьезно? То есть они сначала анонсировали дополнение, которое поделили на две части, а потом ещё часть второго дополнения переносят на будущее?
Где, кстати, новости про археологию? Хочу копать шурфы не только в жизни, но и в кубаче тоже.
вроде говорили, что археология тоже в 1.19
Видимо, коронавирусная удаленка повлияла сильнее, чем ожидалось.
Главное, чтобы фичи все в итоге дошли до релиза и работали, как надо, а не рождали баги
Самое главное: кто слушал внимательно, тот уловил новость о том что Моджанг хотят переработать теперь все поверхностные Биомы
Голем всегда в моём сердце, никакой чёртов allay не займёт его место
В моём тоже. Аллэй по факту это летающая помпа, которая всасывает предметы. А вот големчик маленький балдёж бы был.
Бля надеюсь Голем победит
Уже не терпится попасть в ♂Deep Dark♂ и реализовать там свои ♂fantasies♂
Очередной цирк абсурда с голосованием за моба.
И ни слова про рейтрейсинг на консолях.
Квик резьюма нет до сих пор на сериесах, какой еще рт?)
Тема: Списки и расписания ивентов
Опции темы
Поиск по теме
Отображение
Списки и расписания ивентов
В данной теме можно ознакомиться с ивентами, которые проводятся на нашем проекте.
Всю необходимую информацию по конкретным серверам Вы найдёте в постах ниже.
В них Хед-Модераторы серверов оставят всю необходимую информацию и обновления для игроков.
Список серверов и их Хед-Модераторов:
4 пользователей сказали cпасибо cheald за это полезное сообщение:
1 пользователь сказал cпасибо MrKlad за это полезное сообщение:
Место проведения: /warp mobs.
Призы: Дроп выпавший с мобов.
Место проведения: /warp spleef.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp labirint.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp labirint.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp parkur.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp cub.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp baggi.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: /warp snow.
Призы: Определяет модератор.
Проводящие: Любой модератор.
Место проведения: Определяет модератор.
Призы: Определяет модератор.
Место проведения: /warp gnom.
Призы: Определяет модератор.
Проводящие: Желающий модератор
Место проведения: /warp snow
Призы: Определяются хэд-модератором
Место проведения: /warp parkour
Призы: Определяются хэд-модератором
Проводящие: Желающий модератор
Место проведения: /warp hockey
Призы: Определяются хэд-модератором
Место проведения: /warp spleef
Призы: Определяются хэд-модератором
Проводящие: Желающий модератор
Место проведения: /warp lab
Призы: Определяются хэд-модератором
Место проведения: /warp mobs
Призы: Дроп с убитых мобов
Место проведения: /warp tree
Призы: Определяются хэд-модератором
Место проведения: /spawn
Призы: Определяются хэд-модератором
Так же часто проходят такие эвенты как турнир, осада. Для них создаются отдельные темы в этом разделе, поэтому не буду им упоминать. Позже добавлю информацию про эвент гора, как поправлю его.
Так же проходят сезонные эвенты, такой как был на нг. Об таких эвентах можно узнать на сервере, так что о них тоже не будет тут написанно
1 пользователь сказал cпасибо Crisis2 за это полезное сообщение:
Разрешено: | Запрещено: |
— Стандартные, а так же бронзовые и кварцевые лопаты. | — Любая броня, позволяющая летать (гравинано/квант, дракон). |
— Ставить траву/землю/снег. | — Использование /fly, /speed, сапог путешественника. |
— Зачарования лопаты. | — Использование удочки. |
— Описание:
Простая викторина на абсолютно любые темы: от истории до электроники.
Те, у кого быстрый компьютер и не менее быстрые пальцы могут успеть ответ и нагуглить. А что? Тоже спортивный интерес 🙂
— Описание:
Каждый раз новый путь, новая дорожка к заветному концу. Что может быть лучше лабиринта?
Красные факелы покажут возможно правильный путь!
— Правила*:
Запрещены: /fly, /speed; любая броня, дающая ускорение/полет; любые «баффы» (маяк, зелья);