Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Сервер ругается на строку

TorwaldOswarld

Активный участник
Пользователь
Баллы
78
Имя в Minecraft
PuxTa4
Привет всем. Помогите пожалуйста , http://pastebin.com/bXvrqxNa , сервер ругается на 46 строку , посмотрите , что не так.Спасибо всем . Проблему решил .
 
Последнее редактирование:
Убедитесь, что plugin.protectedBlocks не равно null.
protectedBlocks , это ArrayList , который хранить в себе локацию "public ArrayList<Location> protectedBlocks = new ArrayList<Location>(); "
Убедитесь, что plugin.protectedBlocks не равно null.
Вот ошибка сервера http://prntscr.com/7yhabq
 
Значит вы либо передаете в конструктор слушателя null, либо все же ваш список - null.
 
Первое, зачем вы создаете методы которые есть в Bukkit?
2. Делайте методы статическими и используйте их так(В других классах), Core.methodname...
 
И на скриншоте у вас ошибка в хендлере onPlayerInteract на 48 строке.
Скиньте эту строку, пожалуйста. Или лучше метод целиком.
Первое, зачем вы создаете методы которые есть в Bukkit?
2. Делайте методы статическими и используйте их так(В других классах), Core.methodname...
Так делать не правильно. Можно конечно подобным образом реализовывать вспомогательные классы, но не более.
Обычно создают статичный инстанс и вызывают не статичные методы так: Core.instance.methodname().
 
И на скриншоте у вас ошибка в хендлере onPlayerInteract на 48 строке.
Скиньте эту строку, пожалуйста. Или лучше метод целиком.

Так делать не правильно. Можно конечно подобным образом реализовывать вспомогательные классы, но не более.
Обычно создают статичный инстанс и вызывают не статичные методы так: Core.instance.methodname().
Согласен, но мне удобнее так как я сказал, просто обычно мне нужно получить всего 1 метод/мапу/лист.
 
И на скриншоте у вас ошибка в хендлере onPlayerInteract на 48 строке.
Скиньте эту строку, пожалуйста. Или лучше метод целиком.

Так делать не правильно. Можно конечно подобным образом реализовывать вспомогательные классы, но не более.
Обычно создают статичный инстанс и вызывают не статичные методы так: Core.instance.methodname().
я на pastebin не залил две строки , это строка пакета и пустая строка
 
я на pastebin не залил две строки , это строка пакета и пустая строка
Не очень понятно. А какая строка у вас там является 46(48)-ой? Просто я смотрел по тому исходнику, который вы предоставили, и там на 46-ой строке совсем другой метод.
 
Убедитесь.
Под "не null" я предполагаю, что объект создан и инициализирован как надо.
 
Возможно я чего то не понимаю . Это и есть Core.m
package ru.ShaKe.AGP;

import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.entity.Player;

public class Methods {
public void sendConcole(String s) {
System.out.println(s);
}

public String capitaliseFirstLetter(String s) {
s = s.toLowerCase();
char[] stringArray = s.toCharArray();
stringArray[0] = Character.toUpperCase(stringArray[0]);
s = new String(stringArray);
return s;
}

public void sendMessege(Player player, String s) {
player.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.GOLD
+ "AdvancedProtection" + ChatColor.DARK_GRAY + "]"
+ ChatColor.GRAY + s);
}

public String showBlockCoords(Location l) {
return ChatColor.LIGHT_PURPLE + "" + l.getBlockX() + ", "
+ l.getBlockY() + ", " + l.getBlockZ();

}
}
Убедитесь.
Под "не null" я предполагаю, что объект создан и инициализирован как надо.
Ошибку исправил . Взамен строке Core plugin; написал private static Core plugin;
 
Возможно я чего то не понимаю . Это и есть Core.m
package ru.ShaKe.AGP;

import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.entity.Player;

public class Methods {
public void sendConcole(String s) {
System.out.println(s);
}

public String capitaliseFirstLetter(String s) {
s = s.toLowerCase();
char[] stringArray = s.toCharArray();
stringArray[0] = Character.toUpperCase(stringArray[0]);
s = new String(stringArray);
return s;
}

public void sendMessege(Player player, String s) {
player.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.GOLD
+ "AdvancedProtection" + ChatColor.DARK_GRAY + "]"
+ ChatColor.GRAY + s);
}

public String showBlockCoords(Location l) {
return ChatColor.LIGHT_PURPLE + "" + l.getBlockX() + ", "
+ l.getBlockY() + ", " + l.getBlockZ();

}
}

Ошибку исправил . Взамен строке Core plugin; написал private static Core plugin;
А почему класс называется Methods ?
 

Поделиться этой страницей

Назад
Верх