Эффект кровотечения

Версия Minecraft
1.7.10
202
14
36
Всем привет, как сделать эффект кровотечения или как изменить наносимый урон от эффекта отравления ?
 
Последнее редактирование:
Решение
Типа создаешь зелье
Регистрация зелья - (github.com) MyMod.java#L69
Само зелье - (github.com) PotionBleeding.java
--
(github.com) MyMod.java#L74
-
Ну не обязательно в update игрока, можно в своём Potion переопределить метод performEffect и там делать, что надо.
(github.com) PotionBleeding.java#L18 и чтобы оно ещё и заработало, то в переопределяешь метод isReady с возращением true (github.com) PotionBleeding.java#L13
-
Нужно как-то дать эффект для проверки - (github.com) EventsForge.java#L65
И снять эффект - (github.com) ItemMedicine.java#L18

timaxa007

Модератор
5,831
409
672
Эм... Типа создаешь зелье, даёшь игроку и в эвенте update игрока проверяешь, что у тебя наложен этот эффект и делаешь всякие действия. К примеру даёшь свой DamageSource. К примеру:
Java:
    @SubscribeEvent
    public void onPlayerTickEvent(TickEvent.PlayerTickEvent event) {
        switch(event.phase) {
        case END:
            PotionEffect pe = event.player.getActivePotionEffect(MyMod.potion_bleeding);
            if (pe != null && pe.getAmplifier() % 10 == 0) {//то что он есть и каждые полСекунды
                event.player.attackEntityFrom(MyMod.damage_bleeding, 1F);
            }
            break;
        default:break;
        }
    }
---
Ну не обязательно в update игрока, можно в своём Potion переопределить метод performEffect и там делать, что надо.
 
Последнее редактирование:

timaxa007

Модератор
5,831
409
672
Типа создаешь зелье
Регистрация зелья - (github.com) MyMod.java#L69
Само зелье - (github.com) PotionBleeding.java
--
(github.com) MyMod.java#L74
-
Ну не обязательно в update игрока, можно в своём Potion переопределить метод performEffect и там делать, что надо.
(github.com) PotionBleeding.java#L18 и чтобы оно ещё и заработало, то в переопределяешь метод isReady с возращением true (github.com) PotionBleeding.java#L13
-
Нужно как-то дать эффект для проверки - (github.com) EventsForge.java#L65
И снять эффект - (github.com) ItemMedicine.java#L18
 
Последнее редактирование:
202
14
36
Регистрация зелья - (github.com) MyMod.java#L69
Само зелье - (github.com) PotionBleeding.java
--

(github.com) MyMod.java#L74
-

(github.com) PotionBleeding.java#L18 и чтобы оно ещё и заработало, то в переопределяешь метод isReady с возращением true (github.com) PotionBleeding.java#L13
-
Нужно как-то дать эффект для проверки - (github.com) EventsForge.java#L65
И снять эффект - (github.com) ItemMedicine.java#L18


Ещё 1 вопрос, как сделать скорость ударов от зелья меньше или больше ?
 

timaxa007

Модератор
5,831
409
672

timaxa007

Модератор
5,831
409
672
Сверху