Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
Простого метода нет. Есть метод который отвечает за атаку на моба или при разрушении блока. Или иначе отлавливать эвентом нажатии кнопки (это для клиентской стороны будет работать), а если ещё и на серверной стороне работало, то ещё и пакеты отправлять.
Ну, как-то так. Я тоже могу ошибаться. Я пишу на 1.7.10.
volt
[font=Verdana, Helvetica, Arial, sans-serif]Есть метод который отвечает за атаку на моба или при разрушении блока.[/font]
Какой метод отвечает за разрушение блока?
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
onBlockDestroyed пример можно посмотреть в мече ItemSword. Если я не ошибаюсь.
Ну, как-то так. Я тоже могу ошибаться.
Что делать если в майнкрафт бедрок не роботает пкм
Я пишу на 1.7.10.
volt
timaxa007 этот код должен поставить такой же блок в таких же координатах
public boolean onBlockDestroyed(ItemStack is, World w, Block p_150894_3_, int x, int y, int z, EntityLivingBase e)
Но почему не работает?
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
Destroyed — когда блок разрушен место него будет воздух. Воздух меняешь на воздух.
Ну, как-то так. Я тоже могу ошибаться.
Я пишу на 1.7.10.
volt
А как тогда это сделать?
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
По идеи вроде, должно было:
public boolean onBlockDestroyed(ItemStack is, World world, Block block, int x, int y, int z, EntityLivingBase entity)
Но замены не было, но если сетить над блоком, то появляется тот блок который сломал. Так-что не знаю сейчас, точно как решить подобную не стыковку.
Ну, как-то так. Я тоже могу ошибаться. Я пишу на 1.7.10.
volt
Не работает.
P.S я хочу сделать выделение территории как в WorldEdit.
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
Думаю в таком случаи можно использовать эвент PlayerInteractEvent, типа того:
Ну, как-то так. Я тоже могу ошибаться. Я пишу на 1.7.10.
volt
timaxa007 как устроен топор из WorldEdit? Как хранить координаты двух точек?
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
timaxa007
Модератор
5,831 409 672
volt написал(а):
timaxa007 как устроен топор из WorldEdit?
volt написал(а):
Как хранить координаты двух точек?
Тут много как хранить.
Либо в самом предмете.
Либо с помощью листа или хэш-мапы.
И создать (суб-)класс с двумя (для хэш-мапы) или тремя (для листа) аргументами с типами Vec3 и (для листа) с аргументом EntityPlayer. Первый Vec3 это будет левый клик, второй Vec3 будет правый клик. Координаты для Vec3 брать из куда смотрит Игрок. Потом это хранить в листе или в хэш-мапу. Потом for для листа искать игрока или хэш-мапы вытаскивать по ключу игрока Vec3.
Затем для какого-то метода из двух аргументов Vec3 делаем AxisAlignedBB и т.д.
Действий ещё много можно сделать, я все не перечислю сейчас.
Либо ещё как-то.
Ну, как-то так. Я тоже могу ошибаться. Я пишу на 1.7.10.
AlexSoсol
1,976 68 219
volt написал(а):
Как хранить координаты двух точек?
Через NBT, это просто:
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) < // По ПКМ if (!world.isRemote)< // Сервер? MovingObjectPosition mop = block(player, 1.0F, 4.5D, false); // Выделенный блок if (mop != null) < // Есть ли блок на координатах Block1X = mop.blockX; // Запись X координаты Block1Y = mop.blockY; // Запись Y координаты Block1Z = mop.blockZ; // Запись Z координаты >stack.stackTagCompound = new NBTTagCompound(); // Создание NBT в предмете stack.stackTagCompound.setDouble(«X1», Block1X + 0.5); // Сохранение X stack.stackTagCompound.setDouble(«Y1», Block1Y + 1); // Сохранение Y stack.stackTagCompound.setDouble(«Z1», Block1Z + 0.5); // Сохранение Z > return stack; > // Проверка блока public static MovingObjectPosition block(EntityPlayer player, float fasc, double dist, boolean interact)
Я использовал метод Timaxa007 и немножко сам дописал. Ну и соответственно, onItemRightClick — ПКМ, а для ЛКМ ты уже знаешь. У меня всё работает, надеюсь, у тебя тоже будет
UPD (для тех, кому вдруг нужно): Метод глупый, ибо есть onItemUse, который имеет в себе координаты взаимодействия. Используйте его и не понадобится MOP.
volt
Появилась еще одна проблема. Как мне заполнить эту область если например координаты 1-ой точки (-3, -6, -12) , а второй (1, 3, 2).
Мне кажется что я тупее остальных,нужно что-то делать.О,спрошу у него!
-Здравствуйте молодой человек, можете помочь?
[email protected](7 u!
-.
tox1cozZ
aka Agravaine
8,434 597 2,873
onItemUse для слабаков.
И да, в ворлд эдите точки привязаны к игроку, а не к топору.
AlexSoсol
1,976 68 219
Да хоть в близлежащую алмазную руду, кому как удобнее, тот так и сделает
Если вписать NBT в игрока, можно даже потеряв «//wand» делать что-то с областью. Тогда да, лучше в игрока.
TaoGunner
Для себя я это вижу так: берем наш топорик, тыкаем ЛКМ на первый блок, тыкаем ЛКМ на второй блок. Обе координаты запоминаются в NBT топорика, а также имя того, кто выделял область. Теперь, если ПКМ ткнуть, например, на блок золота — то вся выделенная область закрашивается этим блоком. Если топорик выбросить или потерять, и его найдет другой, то стираем с топора информацию о выделении и записываем имя нового хозяина. А если поднимает старый хозяин — то координаты сохраняются.
Все это сделать несложно.
Самая крутая вещь в С++ — это не писать на нем, а показывать всем в онлайне, что Java говно.
В некроверсиях ниже 1.10 не разбираюсь
Источник: forum.mcmodding.ru
Левая кнопка мыши не работает или работает со сбоями: как исправить ситуацию?
Несмотря на то что большинство компьютерных манипуляторов или мышек является универсальным типом устройств, иногда с ними могут наблюдаться достаточно серьезные проблемы. Одной из самых распространенных считается ситуация, когда левая кнопка мыши не работает или работает не так, как положено (через раз, вызывает контекстное меню и т. п.). Почему так происходит, и как исправить ситуацию, далее мы рассмотрим максимально подробно.
Не работает левая кнопка мыши: в чем причина?
Говоря о том, что может стать причиной такого явления, в первую очередь следует отметить неполадки с самим устройством. Действительно, разного рода механические повреждения способны спровоцировать возникновение ситуаций, когда левая кнопка мыши работает через раз. Однако первопричиной, как ни странно, это может быть далеко не всегда.
Достаточно часто проблемы могут состоять в драйверах устройства. Правда, большей частью это относится к игровым манипуляторам, для которых нужно устанавливать достаточно специфичное управляющее программное обеспечение. Но и со стандартными устройствами такое тоже может случаться.
Не менее распространенными являются проблемы неправильного подключения или даже ситуации, когда блокирование срабатывания мыши производится на программном уровне. Для большинства таких случаев более или менее подходящее решение по восстановлению работоспособности устройства найти можно. Попробуем рассмотреть некоторые из них. О вирусах не говорим, поскольку такие случаи можно встретить очень редко, хотя их воздействие и не исключается.
Изменение подключения манипулятора
Итак, исходим из того, что левая кнопка мыши не работает. Что делать для устранения проблемы?
Для начала попробуйте просто перезагрузить компьютер или переподключить мышь, если она относится к USB- или беспроводному типу, в другой порт. Для устройств стандарта PS2 повторное включение нужно производить только при отключенном питании, а для USB-модификаций манипуляторов сделать это можно, как говорится, прямо на ходу. Но это только самое простое, что может быть, и обычно проблема скрыта гораздо глубже.
Настройка энергосбережения и схемы электропитания
Давайте же посмотрим, что можно сделать, если левая кнопка мыши не работает или работает не в том режиме (скажем, для двойного клика нужно производить более двух нажатий, или реакция на нажатие кнопки отсутствует вообще).
Предлагаемое решение касается только USB-устройств и для манипуляторов обычного типа неприменимо:
- Для начала, чтобы пока не предпринимать никакие действия с драйверами, необходимо вызвать «Диспетчер устройств» (devmgmt.msc в меню «Выполнить»).
- Найти там все устройства Generic USB Hub и корневые USB-концентраторы (их может быть несколько).
- Для каждого просмотреть раздел свойств с переходом на вкладку управления электропитанием.
- Если напротив пункта отключения устройства для экономии энергии установлена галочка, ее необходимо убрать, после чего сохранить установленные опции и для верности произвести рестарт системы.
Иногда бывает и так, что левая кнопка мыши не работает из-за некорректно установленных параметров в текущей схеме электропитания, что более характерно для ноутбуков.
В этой ситуации необходимо:
- зайти в соответствующие настройки, используя для этого «Панель управления» или меню ПКМ на значке батареи;
- раскрыть дополнительные параметры;
- в опциях временного отключения USB-портов выставить запрет.
Отключение задержки тачпада на ноутбуке
На лэптопах такая проблема очень часто связана с тем, что на срабатывание кнопки мыши (необязательно левой) оказывает влияние включенный тачпад. Его следует отключить, либо используя для этого сочетания клавиш на основе кнопки Fn, либо непосредственно в настройках параметров манипулятора, которые находятся в соответствующем разделе «Панели управления».
Аналогичную процедуру можно произвести и в «Диспетчере устройств», выбрав для тачпада отключение.
Что делать, если левая кнопка мыши работает, как правая?
Если же проблема состоит в том, что левая кнопка почему-то вызывает контекстные меню, а не срабатывает на операции выделения или ввода, то, по всей видимости, каким-то образом были изменены настройки мыши, касающиеся смены кнопок.
Для устранения проблемы используйте «Панель управления» и раздел настройки мыши. Здесь нужно снять флажок с пункта обмена назначения кнопок, если он там установлен.
Что может быть еще?
На всякий случай посмотрите, не установлено ли у вас какое-то дополнительное программное обеспечение для управления мышью или для переназначения кнопок. Оно также может вызывать появление таких ситуаций.
Наконец, если вообще ничего не помогает, в «Диспетчере устройств» просто удалите мышь из списка, а затем выполните перезагрузку системы. Очень может быть, что Windows при рестарте инсталлирует нужные драйвера заново, и проблема отпадет сама собой.
Но, если и после этого ничего не изменится, проверьте манипулятор на работоспособность на другом ПК, а при необходимости, сдайте в ремонт или купите новый. Благо, сейчас такие устройства стоят недорого.
Источник: fb.ru
Не работает левая или правая кнопка мыши (ЛКМ/ПКМ): что делать? Как заменить кнопку мыши клавиатурой
День добрый!
Вообще, по статистике, стоит сказать, что левая кнопка мышки — одна из самых нагруженных.
Казалось бы, ну что такое простая офисная работа? Но при ней на ЛКМ* за час (в среднем) нажимают до 200 и более раз! В некоторых играх показатель может быть в несколько раз выше (в общем-то, нагрузка на неё дай боже. ). Впрочем, хватает работы и для правой.
Вообще, при отказе любой из кнопок мыши — работа за ПК становится очень неудобной (а в некоторых случаях и вовсе невозможной).
Начать «разбор» ситуации стоило бы с разделения проблемы на два направления: аппаратное и программное (например, если сломалась сама кнопка — то это аппаратная проблема, если проблема в драйвере, например, — то программная). Собственно, исходя из этого и постараюсь разделить эту статью.
И так, перейдем к делу.
- «ЛКМ» — левая кнопка мышки;
- «ПКМ» — правая кнопка мышки;
Рекомендации тем, у кого не работает одна из кнопок мыши
Проблема в мышке? (Диагностируем!)
Самое первое, чтобы я порекомендовал сделать в этом случае — проверить, все ли в порядке с самой мышкой. Нередко при интенсивном использовании сама кнопка у мышки перестает срабатывать (и на нее нужно нажать чрезмерно сильно, чтобы она отреагировала).
Кстати, характерный симптом при этом: периодически ЛКМ (ПКМ) у мышки то не реагирует, то начинает срабатывать, причем, нередко получается сразу двойной клик.
Для диагностики : достаточно подключить мышку к другому компьютеру/ноутбуку (на котором нет подобной проблемы). Если она ведет себя на нем аналогично (т.е. ЛКМ не срабатывает) — то проблема наверняка в мышке (возможно вышла из строя кнопка, повреждена плата и пр.).
В этом случае два пути: либо покупать новую мышку, либо попробовать ее отремонтировать (если у вас есть свободное время на эксперименты ).
Кстати!
Купить дешевые мышки (да и др. компьютерное железо) можно в китайских онлайн-магазинах.
Пару слов о ее ремонте
При наличии опыта пайки, можно попробовать разобрать мышку, почистить от пыли и посмотреть, не отошли ли где какие контакты, все ли в порядке с платой.
Если все OK, то можно попробовать вместо старой кнопки впаять новую. В принципе, ничего сложного здесь нет (разве только могут понадобиться старые мышки, с которых взять работающую кнопку).
Кстати, также можно попробовать правую кнопку установить на место левой, левую — на правую. Этот вариант особенно актуален в тех случаях, когда у вас ЛКМ плохо срабатывает (либо происходит двойной клик).
Перепайка кнопок мышки
Сервисы, насколько знаю, ремонтом мышек не занимаются (т.к. время работы мастера стоит дороже, чем новая мышь). Разве только, если у вас дорогая геймерская мышка (с которой вы уже сроднились, и готовые выложить за нее любую разумную сумму).
Что делать, если сама мышка работоспособна, но ЛКМ (ПКМ) не срабатывает
Это более интересный вариант (т.е. на другом ПК мышка работает и с ней все в порядке, а на текущем — почему-то ведет себя «странно»).
Вообще, одним из первых советов будет — попробовать перезагрузить компьютер (иногда подобная проблема происходит из-за различных системных сбоев, высокой нагрузки на ЦП и пр.). Если перезагрузка ничего не дала, то порекомендую следующее.
1) Попробуйте подключить мышь к другому USB порту
Крайне желательно не подключать ее к USB портам, которые находятся на клавиатуре, идут через какие-то раздвоители и пр. переходники.
Подключите именно к USB с задней стороны системного блока (если у вас ноутбук — то непосредственно к нему). В любом случае, проверьте последовательно несколько своих USB-портов.
Если у вас проблема с PS/2 мышкой — подключите ее через переходник к USB-порту.
Переходник PS/2 на USB
2) Проверьте энергосберегающий режим
Дело в том, что при его работе компьютер может отключать мышь в целях экономии энергии. Чтобы проверить так ли это, необходимо открыть диспетчер устройств (приведу способ, как это сделать без мышки):
- нажмите Win+R , чтобы появилось окно «Выполнить» ;
- введите команду devmgmt.msc ;
- нажмите Enter.
В диспетчере устройств найдите вкладку «Мыши и иные указывающие устройства» (см. скрин ниже ). Если мышка у вас не работает: сначала нажмите «TAB» (чтобы появился указатель) и далее для перемещения вверх-вниз используйте кнопки «↑», «↓» (прим.: обычные «стрелочки» на клавиатуре), для раскрытия вкладки нажмите «→».
Выбрав нужное устройство (например, «HID-совместимая мышь». Кстати, у вас может быть название несколько отличное) просто нажмите на «Enter».
Диспетчер устройств — мыши
Далее (используя «TAB» и «стрелочки») откройте вкладку «Управление электропитанием» и снимите галочку с пункта «Разрешить отключение этого устройства для экономии энергии» .
Сохраните настройки и перезагрузите компьютер.
Разрешить отключение этого устройства для экономии энергии
3) Проверьте параметры электропитания
Для этого откройте панель управления Windows, и перейдите по следующему пути: Панель управленияОборудование и звукЭлектропитание .
После откройте настройки текущей схемы электропитания.
Настройки схемы электропитания
Далее перейдите по ссылке «Изменить дополнительные параметры питания» (см. скрин ниже ).
Доп. параметры питания
Во вкладке «Параметры USB» запретите отключение USB порта (см. пример ниже ).
Электропитание (Отключение USB — запрещено)
Далее сохраните настройки, перезагрузите компьютер и проверьте работоспособность мышки.
4) Отключите тачпад (относится к ноутбукам)
В некоторых случаях параллельная работа тачпада и мышки затруднительна (дело в том, что современная работа тачпада «не учитывает» случайные нажатия на него (например, когда вы что-то печатаете и случайно задели тачпад) , т.е. она просто блокирует такие нажатия, как будто их и не было.
Отмечу, что она также может блокировать не только их, но и ваши нажатие на ЛКМ/ПКМ).
Для отключения тачпада в Windows 10 достаточно открыть параметры системы, вкладку «Устройства/Сенсорная панель» и перевести ее в режим «Откл.» (пример ниже ).
Параметры Windows 10 — Сенсорная панель
Отмечу, что на многих ноутбуках есть спец. клавиши для вкл./откл. тачпада: например, на ноутбуках ASUS это сочетание Fn+F9 (обычно).
Клавиатура ноутбука ASUS: откл./вкл. тачпада
В помощь!
Как отключить тачпад на ноутбуке (несколько способов) — см. инструкцию
5) Проверьте драйвера на мышь (это особо относится к игровым мышкам, которые идут с доп. кнопками)
По статистике, как правило, проблем больше возникает с навороченными мышками: у которых есть дополнительные клавиши (их часто используют в играх для быстрого доступа к игровому персонажу).
Так вот, для подобных мышек часто необходимо устанавливать драйвера вручную (т.к. драйвер, который подберет Windows, может работать с ней некорректно).
Типичная геймерская мышка
Вообще, тема драйверов «достаточно» обширна. Если вы не знаете как их обновить, рекомендую воспользоваться материалами, ссылки на которые ниже:
- 10 Лучших программ для обновления драйверов (автоматически!) — см. подборку;
- Как найти и установить драйвер для неизвестного устройства — см.инструкцию .
Дополнение!
Что делать, если совсем перестала работать мышь (даже курсор не двигается!).
6) Для пользователей Windows 10 — проверьте, чтобы не был включен режим планшета
Дело в том, что Windows 10 универсальная система, и она устанавливается не только на самые обычные классические ПК и ноутбуки, но и на планшеты (и устройства-трансформеры). И, разумеется, на них пользоваться системой удобнее в спец. «режиме планшета» (а в нем мышь не работает*).
И подмечено, что в некоторых случаях он может включиться даже в том случае, если у вас нет сенсорного экрана (и устройство никак для этого не предназначено).
Поэтому, если у вас эта ОС — попробуйте нажать на Win+A (для открытия бокового меню), затем несколько раз на TAB, и проверить выключен ли он.
Win+A — боковое меню / режим планшета / Windows 10
В помощь!
Как отключить (включить) режим планшета (Windows 10) — см. несколько способов
Как заменить правую или левую кнопки мыши клавиатурой
Да, частично заменить мышку можно клавиатурой (любую из кнопок). Т.к. вопрос этот не редкий, я его тоже включил в эту заметку.
Правую
- вариант 1 : на классической клавиатуре есть кнопка вызова контекстного меню — это и есть ПКМ (обычно, она между Ctrl и Win );
- вариант 2 : использовать сочетание Shift+F10 (на ноутбуках возможно Shift+Fn+F10);
- вариант 3 : в Windows есть спец. режим, при котором клавиатура полностью заменяет мышь. Чтобы его активировать — нажмите ALT+SHIFT+NUMLOCK (после «минус» станет аналогом ПКМ);
- вариант 4 : если у вас ноутбук — используйте тачпад (это очевидно).
Типовая клавиатура — нажимаем Shift+F10
Левую
- вариант 1 : клавиша Enter заменяет ЛКМ;
- вариант 2 : сочетание ALT+SHIFT+NUMLOCK переведет работу клавиатуры в особый режим (заменяющий мышь). Аналогом ЛКМ станет клавиша «5» (или «косая черта»);
- вариант 3 : на ноутбуках есть тачпад (нажимать длинную левую кнопку в нижней его части).
Общие моменты:
- TAB и стрелочки (→, ↓ и др.) — помогают перемещать курсор по различным элементам на рабочем столе (или открытой программы);
- Alt+TAB — перемещение между окнами;
- Ctrl+Esc или Win — вызов меню ПУСК;
- Win+E — вызов проводника;
- Alt+F4 — выход из приложения (закрытие);
- Ctrl+S — сохранение файла;
- Ctrl+A (Ctrl+C) — выделить всё, что есть на странице/окне (и скопировать в буфер);
- Ctrl+V — вставить в открытый документ всё, что было ранее скопировано в буфер.
Первая публикация: 21.09.2018
Источник: ocomp.info