Перейти к содержанию

Оружие с диапазоном урона


Jpnk

Рекомендуемые сообщения

В теме 5 сообщений

Например от 4-7 урона
Можно в командах и в датапаке
1.18.2
Если есть датапак использующий такую схему, можно название.
Если нельзя сделать такое оружие, то как проверить когда игрок атакует любого моба и выдать мобу урон.

Ссылка на комментарий
Поделиться на другие сайты

Ни создать оружие, ни проверить атаку нельзя. Ну или я не знаю как это сделать.
Можно попробовать отследить уменьшение жизней у мобов, и если в этот момент рядом находится игрок с оружием, выдавать урон. Сделать такое будет сложно.

 

Ссылка на комментарий
Поделиться на другие сайты

37 минут назад, LackyHaus сказал:

Ни создать оружие, ни проверить атаку нельзя. Ну или я не знаю как это сделать.
Можно попробовать отследить уменьшение жизней у мобов, и если в этот момент рядом находится игрок с оружием, выдавать урон. Сделать такое будет сложно.

 

Это слишком сложно, я придумал проще.

Ставим кб вот так:

2022-08-23_22_49_53.thumb.png.9d9fba1b3c60d0f2a1b1cfadb3424e58.png

Все зелёные должны быть всегда активными!

Команда: №1 execute as @a run scoreboard players add @s swordtype 1

Команда: №2 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=1}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:2},{id:"minecraft:fire_aspect",lvl:1}]}

Команда: №3 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=2}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:3}]}

Команда №4 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=3}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:1}]}

Команда: №5 scoreboard players set @a[scores={swordtype=4..}] swordtype 0

========

Далее в чате прописываем следующие команды:

/scoreboard objectives add swordtype dummy

/give @p minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"minecraft:sharpness",lvl:1}]}

========

Вся суть в том что мы быстро заменяем меч с тегом: "supersword" на тот же меч но с большим уроном, или другим зачарованием. Таким образом получается урон в диапазоне, а в моём случае ещё и поджёг с каким то шансом. Как создать своё оружие разберётесь сами.

Ссылка на комментарий
Поделиться на другие сайты

11 часов назад, LackyHaus сказал:

Это слишком сложно, я придумал проще.

Ставим кб вот так:

2022-08-23_22_49_53.thumb.png.9d9fba1b3c60d0f2a1b1cfadb3424e58.png

Все зелёные должны быть всегда активными!

Команда: №1 execute as @a run scoreboard players add @s swordtype 1

Команда: №2 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=1}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:2},{id:"minecraft:fire_aspect",lvl:1}]}

Команда: №3 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=2}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:3}]}

Команда №4 execute as @a[nbt={SelectedItem:{tag:{display:{Tags:["supersword"]}}}},scores={swordtype=3}] run item replace entity @s weapon.mainhand with minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"sharpness",lvl:1}]}

Команда: №5 scoreboard players set @a[scores={swordtype=4..}] swordtype 0

========

Далее в чате прописываем следующие команды:

/scoreboard objectives add swordtype dummy

/give @p minecraft:wooden_sword{display:{Tags:["supersword"]},Enchantments:[{id:"minecraft:sharpness",lvl:1}]}

========

Вся суть в том что мы быстро заменяем меч с тегом: "supersword" на тот же меч но с большим уроном, или другим зачарованием. Таким образом получается урон в диапазоне, а в моём случае ещё и поджёг с каким то шансом. Как создать своё оружие разберётесь сами.

Фиговый способ. Я как-то делал бритву мерунеса из скайрима (с шансом 1/83 ваншотает врагов) и тоже пробовал сделать так. Багов немеряно возникает. Во-первых предмет будет ремонтироваться при каждой замене. Во-вторых при замене предмета сбивается откат его атаки что смотрится стрёмно. В-третьих при атаках урон по врагам часто будет вовсе не проходить, особенно если заменять каждый тик. Я тогда нашёл способ куда проще, связаный с заменой атрибутов самого игрока.

#Это просто функция генерации случайных чисел. Можно заменить на счётчик

function lab:step_randomize
scoreboard players operation 83 Random = X Random
scoreboard players operation 83 Random %= 83 Integer

#Если есть игрок без бритвы, но с атрибутом, удаляем. Если есть с бритвой, но без тэга, вызываем функцию. Всё это каждый тик.

attribute @r[nbt=!{SelectedItem:{tag:{display:{Name:"{\"text\":\"Бритва мерунеса\",\"bold\":true,\"color\":\"aqua\"}"}}}}, tag=mehrunes_razor] minecraft:generic.attack_damage base set 1
execute if entity @a[nbt={SelectedItem:{tag:{display:{Name:"{\"text\":\"Бритва мерунеса\",\"bold\":true,\"color\":\"aqua\"}"}}}}, tag=!mehrunes_razor] run schedule function item:mehrunes_razor 5t
tag @a[nbt={SelectedItem:{tag:{display:{Name:"{\"text\":\"Бритва мерунеса\",\"bold\":true,\"color\":\"aqua\"}"}}}}] add mehrunes_razor
tag @a[nbt=!{SelectedItem:{tag:{display:{Name:"{\"text\":\"Бритва мерунеса\",\"bold\":true,\"color\":\"aqua\"}"}}}}] remove mehrunes_razor

#А это внутри функции item:mehrunes_razor

execute if score 83 Random = 0 Integer run attribute @r[tag=mehrunes_razor] minecraft:generic.attack_damage base set 1000000
execute unless score 83 Random = 0 Integer run attribute @r[tag=mehrunes_razor] minecraft:generic.attack_damage base set 1

execute if entity @a[tag=mehrunes_razor] run schedule function item:mehrunes_razor 5t

 

 

 

 

 

 

Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...