package com.r3944realms.leashedplayer.mixin.client;

import com.r3944realms.leashedplayer.client.renderer.PlayerLeashState;
import com.r3944realms.leashedplayer.client.renderer.PlayerSlotItemLayerState;
import com.r3944realms.leashedplayer.modInterface.IPlayerRenderStateExtension;
import net.minecraft.client.renderer.entity.state.PlayerRenderState;
import org.jetbrains.annotations.Nullable;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;

@SuppressWarnings({"AddedMixinMembersNamePattern"})
@Mixin(PlayerRenderState.class)
public class MixinPlayerRenderState implements IPlayerRenderStateExtension {
    @Unique
    @Nullable
    private PlayerLeashState playerLeashState;
    @Unique
    private PlayerSlotItemLayerState playerSlotItemLayerState;
    @Override
    public @Nullable PlayerLeashState getPlayerLeashState() {
        return playerLeashState;
    }

    @Override
    public void setPlayerLeashState(@Nullable PlayerLeashState playerRenderState) {
        this.playerLeashState = playerRenderState;
    }

    @Override
    public PlayerSlotItemLayerState getPlayerSlotItemLayerState() {
        return playerSlotItemLayerState;
    }

    @Override
    public void setPlayerSlotItemLayerState(PlayerSlotItemLayerState playerRenderState) {
        this.playerSlotItemLayerState = playerRenderState;
    }

}
