MinecraftClient.getInstance().player возвращает нольJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 MinecraftClient.getInstance().player возвращает ноль

Сообщение Anonymous »

Я только начал с попытки создать простой мод для Minecraft, который возвращает свойство PlayerEntity DisplayName и записывает его в консоль. Код выглядит следующим образом:
SimpleMod.java

Код: Выделить всё

package net.arecdev.simplemod;

import net.fabricmc.api.ModInitializer;

import net.arecdev.simplemod.test.TestClass;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class SimpleMod implements ModInitializer {
public static final String MOD_ID = "simplemod";
public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);

@Override
public void onInitialize() {
LOGGER.info("Simple Mod has started");

String teststring = TestClass.test();
LOGGER.info("String: " + teststring);
}
}
TestClass.java

Код: Выделить всё

package net.arecdev.simplemod.test;

import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.text.Text;

public class TestClass {

public static String test() {

PlayerEntity player = MinecraftClient.getInstance().player;
Text playerDisplayName = player.getDisplayName();
String playerDisplayString = playerDisplayName.getString();
return playerDisplayString;
}

}
при попытке запустить это с помощью клиента Minecraft я получаю исключение NullPointerException:
Вызвано: java.lang.NullPointerException: невозможно вызвать «net.minecraft.entity.player.PlayerEntity.getDisplayName()», потому что «player» имеет значение null
Я предполагаю, что это происходит потому, что MinecraftClient еще не запущен в этот момент пока.
Так как же мне дождаться инициализации MinecraftClient?

Подробнее здесь: https://stackoverflow.com/questions/782 ... turns-null
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»