aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/events/SkyHanniRenderEntityEvent.kt
blob: 289e661f1b69099c71f8d60dc50da6ffbf9108a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package at.hannibal2.skyhanni.events

import net.minecraft.client.renderer.entity.RendererLivingEntity
import net.minecraft.entity.EntityLivingBase
import net.minecraftforge.fml.common.eventhandler.Cancelable

@Cancelable
open class SkyHanniRenderEntityEvent<T : EntityLivingBase>(
    val entity: T,
    val renderer: RendererLivingEntity<out T>,
    val x: Double,
    val y: Double,
    val z: Double
) : LorenzEvent() {
    class Pre<T : EntityLivingBase>(
        entity: T,
        renderer: RendererLivingEntity<out T>,
        x: Double,
        y: Double,
        z: Double
    ) : SkyHanniRenderEntityEvent<T>(entity, renderer, x, y, z)

    class Post<T : EntityLivingBase>(
        entity: T,
        renderer: RendererLivingEntity<out T>,
        x: Double,
        y: Double,
        z: Double
    ) : SkyHanniRenderEntityEvent<T>(entity, renderer, x, y, z)

    open class Specials<T : EntityLivingBase>(
        entity: T,
        renderer: RendererLivingEntity<out T>,
        x: Double,
        y: Double,
        z: Double
    ) : SkyHanniRenderEntityEvent<T>(entity, renderer, x, y, z) {
        class Pre<T : EntityLivingBase>(
            entity: T,
            renderer: RendererLivingEntity<out T>,
            x: Double,
            y: Double,
            z: Double
        ) : Specials<T>(entity, renderer, x, y, z)

        class Post<T : EntityLivingBase>(
            entity: T,
            renderer: RendererLivingEntity<out T>,
            x: Double,
            y: Double,
            z: Double
        ) : Specials<T>(entity, renderer, x, y, z)
    }
}