Фикс Ивенты для модов [Механизмы работают от имени владельца]

Проблема с ивентами на IC2 (822):
Поставил терраформер с чипом "выравнивание". Включил, а в консоль начали сыпаться ошибки "[WARN] Failed check private", но работает всё при этом нормально. Опасно ли это и как убрать ошибки?
Ах, да и ещё. gamerforEA, подскажи, пожалуйста.
Хочу сделать так, чтобы при взрыве реактор разрушал только тот приват, внутри которого он стоит, не портя свободную территорию. Но не нашел функцию у классов ModUtils или EventUtils, которая просто проверяет отсутствие привата на координатах. Может всё-таки такая есть...
 
Проблема с ивентами на IC2 (822):
Поставил терраформер с чипом "выравнивание". Включил, а в консоль начали сыпаться ошибки "[WARN] Failed check private", но работает всё при этом нормально. Опасно ли это и как убрать ошибки?
Ах, да и ещё. gamerforEA, подскажи, пожалуйста.
Хочу сделать так, чтобы при взрыве реактор разрушал только тот приват, внутри которого он стоит, не портя свободную территорию. Но не нашел функцию у классов ModUtils или EventUtils, которая просто проверяет отсутствие привата на координатах. Может всё-таки такая есть...
  1. При проверке наличия привата у вас выбрасывается исключение. Включайте отладку и смотрите, что не так.
  2. Такая функция есть: если isInPrivate возвращает false, то привата нет, а если true, то приват есть.
 
При проверке наличия привата у вас выбрасывается исключение

Действительно. Вот такое исключение:

10:21 AM [WARN] java.lang.reflect.InvocationTargetException
10:21 AM [WARN] at sun.reflect.GeneratedMethodAccessor59.invoke(Unknown Source)
10:21 AM [WARN] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno wn Source)
10:21 AM [WARN] at java.lang.reflect.Method.invoke(Unknown Source)
10:21 AM [WARN] at com.gamerforea.eventhelper.wg.WGRegionChecker.isInPri vate(WGRegionChecker.java:17)
10:21 AM [WARN] at com.gamerforea.eventhelper.util.EventUtils.isInPrivat e(EventUtils.java:93)
10:21 AM [WARN] at com.gamerforea.ic2.ModUtils.cantBreakOrNotInPrivate(M odUtils.java:31)
10:21 AM [WARN] at ic2.core.item.tfbp.ItemTFBPFlatification.terraform(It emTFBPFlatification.java:93)
10:21 AM [WARN] at ic2.core.block.machine.tileentity.TileEntityTerra.upd ateEntityServer(TileEntityTerra.java:73)
10:21 AM [WARN] at ic2.core.block.TileEntityBlock.func_145845_h(TileEnti tyBlock.java:195)
10:21 AM [WARN] at net.minecraft.world.World.func_72939_s(World.java:251 3)
10:21 AM [WARN] at net.minecraft.world.WorldServer.func_72939_s(WorldSer ver.java:669)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.func_71190_q(Min ecraftServer.java:954)
10:21 AM [WARN] at net.minecraft.server.dedicated.DedicatedServer.func_7 1190_q(DedicatedServer.java:431)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.func_71217_p(Min ecraftServer.java:809)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.run(MinecraftSer ver.java:669)
10:21 AM [WARN] at java.lang.Thread.run(Unknown Source)
10:21 AM [WARN] Caused by: java.lang.IncompatibleClassChangeError: Found class c om.sk89q.worldguard.protection.ApplicableRegionSet, but interface was expected
10:21 AM [WARN] at com.gamerforea.eventhelper.wg.WGRegionChecker$Inj.isI nPrivateInj(WGRegionChecker.java:38)
10:21 AM [WARN] ... 16 more

Версия IC2 822.

Похоже, что как раз функция isInPrivate и сломалась. В терраформере стоит проверка
ModUtils.cantBreakOrNotInPrivate(player, x, y, z)
Это значит, что он не должен работать на свободной территории, а только внутри приватов? Но у меня он на свободной территории работает, но чужие приваты не задевает. Проверьте у себя терраформер, если не лень. Это ведь действительно ошибка? Подскажите, как бы это исправить...
 
Действительно. Вот такое исключение:

10:21 AM [WARN] java.lang.reflect.InvocationTargetException
10:21 AM [WARN] at sun.reflect.GeneratedMethodAccessor59.invoke(Unknown Source)
10:21 AM [WARN] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno wn Source)
10:21 AM [WARN] at java.lang.reflect.Method.invoke(Unknown Source)
10:21 AM [WARN] at com.gamerforea.eventhelper.wg.WGRegionChecker.isInPri vate(WGRegionChecker.java:17)
10:21 AM [WARN] at com.gamerforea.eventhelper.util.EventUtils.isInPrivat e(EventUtils.java:93)
10:21 AM [WARN] at com.gamerforea.ic2.ModUtils.cantBreakOrNotInPrivate(M odUtils.java:31)
10:21 AM [WARN] at ic2.core.item.tfbp.ItemTFBPFlatification.terraform(It emTFBPFlatification.java:93)
10:21 AM [WARN] at ic2.core.block.machine.tileentity.TileEntityTerra.upd ateEntityServer(TileEntityTerra.java:73)
10:21 AM [WARN] at ic2.core.block.TileEntityBlock.func_145845_h(TileEnti tyBlock.java:195)
10:21 AM [WARN] at net.minecraft.world.World.func_72939_s(World.java:251 3)
10:21 AM [WARN] at net.minecraft.world.WorldServer.func_72939_s(WorldSer ver.java:669)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.func_71190_q(Min ecraftServer.java:954)
10:21 AM [WARN] at net.minecraft.server.dedicated.DedicatedServer.func_7 1190_q(DedicatedServer.java:431)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.func_71217_p(Min ecraftServer.java:809)
10:21 AM [WARN] at net.minecraft.server.MinecraftServer.run(MinecraftSer ver.java:669)
10:21 AM [WARN] at java.lang.Thread.run(Unknown Source)
10:21 AM [WARN] Caused by: java.lang.IncompatibleClassChangeError: Found class c om.sk89q.worldguard.protection.ApplicableRegionSet, but interface was expected
10:21 AM [WARN] at com.gamerforea.eventhelper.wg.WGRegionChecker$Inj.isI nPrivateInj(WGRegionChecker.java:38)
10:21 AM [WARN] ... 16 more

Версия IC2 822.

Похоже, что как раз функция isInPrivate и сломалась. В терраформере стоит проверка
ModUtils.cantBreakOrNotInPrivate(player, x, y, z)
Это значит, что он не должен работать на свободной территории, а только внутри приватов? Но у меня он на свободной территории работает, но чужие приваты не задевает. Проверьте у себя терраформер, если не лень. Это ведь действительно ошибка? Подскажите, как бы это исправить...
У вас какая версия WorldGuard?
 

Новые версии не поддерживают MC 1.7.10.
В результате я закомментировал !EventUtils.isInPrivate() в функции ModUtils.cantBreakOrNotInPrivate() разрешив терраформеру работать на свободной территории, но искусственно уменьшил радиус его работы до 32*32 блоков, чтобы не устроил во всём мире апокалипсис =) Теперь ошибок в консоли нет, а EventHelper работает с WG 5.9.
 
Новые версии не поддерживают MC 1.7.10.
В результате я закомментировал !EventUtils.isInPrivate() в функции ModUtils.cantBreakOrNotInPrivate() разрешив терраформеру работать на свободной территории, но искусственно уменьшил радиус его работы до 32*32 блоков, чтобы не устроил во всём мире апокалипсис =) Теперь ошибок в консоли нет, а EventHelper работает с WG 5.9.
Поддерживают они 1.7 -_-
 
День добрый, такой вопросец возник, кто нибудь уже придумал как пофиксить дюп, АЕ2 аддон для таума, через магический верстак. Если кто то смог, поделитесь информацией, сами голову уже ломаем, ничего не получается.
 
День добрый, такой вопросец возник, кто нибудь уже придумал как пофиксить дюп, АЕ2 аддон для таума, через магический верстак. Если кто то смог, поделитесь информацией, сами голову уже ломаем, ничего не получается.
Лечится отключением ПКМ для этого терминала.
 
А не прокатит отловить одновременное нажатие лкм+пкм и отменить?
 
А почему ты не хочешь заниматься этим терминалом, если даже знаешь куда копать?
Пофиксить я его не смог. Меня совсем недавно один из заказчиков натолкнул на мысль об отключении ПКМ, что я и сделал.
А не прокатит отловить одновременное нажатие лкм+пкм и отменить?
Это уже на стороне клиента будет фикс, так что его можно будет обойти.
 
Назад
Верх