mirror of
https://github.com/Sollace/Unicopia.git
synced 2024-11-28 23:48:00 +01:00
61 lines
1.8 KiB
Java
61 lines
1.8 KiB
Java
|
package com.minelittlepony.unicopia.client;
|
||
|
|
||
|
import javax.annotation.Nonnull;
|
||
|
import javax.annotation.Nullable;
|
||
|
|
||
|
import com.minelittlepony.unicopia.InteractionManager;
|
||
|
import com.minelittlepony.unicopia.Race;
|
||
|
import com.minelittlepony.unicopia.Unicopia;
|
||
|
import com.minelittlepony.unicopia.entity.player.Pony;
|
||
|
import com.minelittlepony.unicopia.util.dummy.DummyClientPlayerEntity;
|
||
|
import com.mojang.authlib.GameProfile;
|
||
|
|
||
|
import net.minecraft.client.MinecraftClient;
|
||
|
import net.minecraft.client.world.ClientWorld;
|
||
|
import net.minecraft.entity.Entity;
|
||
|
import net.minecraft.entity.player.PlayerEntity;
|
||
|
|
||
|
public class ClientInteractionManager extends InteractionManager {
|
||
|
|
||
|
@Override
|
||
|
@Nonnull
|
||
|
public PlayerEntity createPlayer(Entity observer, GameProfile profile) {
|
||
|
if (observer.world instanceof ClientWorld) {
|
||
|
return new DummyClientPlayerEntity((ClientWorld)observer.world, profile);
|
||
|
}
|
||
|
return super.createPlayer(observer, profile);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public boolean isClientPlayer(@Nullable PlayerEntity player) {
|
||
|
if (MinecraftClient.getInstance().player == player) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
if (MinecraftClient.getInstance().player == null || player == null) {
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
return Pony.equal(MinecraftClient.getInstance().player, player);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public Race getPreferredRace() {
|
||
|
if (!Unicopia.getConfig().ignoresMineLittlePony()
|
||
|
&& MinecraftClient.getInstance().player != null) {
|
||
|
Race race = MineLPConnector.getPlayerPonyRace();
|
||
|
|
||
|
if (!race.isDefault()) {
|
||
|
return race;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return Unicopia.getConfig().getPrefferedRace();
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public int getViewMode() {
|
||
|
return MinecraftClient.getInstance().options.perspective;
|
||
|
}
|
||
|
}
|