Помогите Не тпешает домой.

что-то like
Код:
Location loc = new Location(Bukkit.getWorld(config.getString("locations." + name + ".world")),  Double.valueOf(config.getString("locations." + name + ".x")), Double.valueOf(config.getString("locations." + name + ".y")), Double.valueOf(config.getString("locations." + name + ".z")));
не чекал ессно, но принцип думаю поймешь.
 
что-то like
Код:
Location loc = new Location(Bukkit.getWorld(config.getString("locations." + name + ".world")),  Double.valueOf(config.getString("locations." + name + ".x")), Double.valueOf(config.getString("locations." + name + ".y")), Double.valueOf(config.getString("locations." + name + ".z")));
не чекал ессно, но принцип думаю поймешь.
а это я могу удалить
Код:
config.getDouble("locations." + name + ".x"),
                config.getDouble("locations." + name + ".y"),
                config.getDouble("locations." + name + ".z"));

что-то like
Код:
Location loc = new Location(Bukkit.getWorld(config.getString("locations." + name + ".world")),  Double.valueOf(config.getString("locations." + name + ".x")), Double.valueOf(config.getString("locations." + name + ".y")), Double.valueOf(config.getString("locations." + name + ".z")));
не чекал ессно, но принцип думаю поймешь.
Так-же вся тоже строчка 63
Код:
if (cmd.getName().equalsIgnoreCase("tphome")) {
            if (checkSender(sender)) {
                MessageManager.getManager().msg(sender, MessageType.BAD, "Only players can use this command!");
                return true;
            }
            Player p = (Player) sender;
          
            Location home = configToLoc(p.getName());
            if (home != null){
            p.teleport(home);
            MessageManager.getManager().msg(p, MessageType.GOOD, "Телепорт домой!");
            return true;
        }
      }
        return false;
    }


Та проблема 64 строчка Location home = configToLoc(p.getName());
 
ну или юзай getDouble, забыл о нем, так как пишу не с ide, а тут сразу.
Тут ошибки и сам плагин - дет сад.
Разберись с тем, какую выдает ошибку и что там не так в этом методе.
 
Location home = configToLoc(p.getName());
Ему не нравилась строчка.Щас пилю Location home = configToLoc(p.getName());
 
Когда есть ошибка выходит стак трейс ошибки. Ее пояснение. Что в нем?
И где код этого configToLoc()
 
Когда есть ошибка выходит стак трейс ошибки. Ее пояснение. Что в нем?
И где код этого configToLoc()
Код:
public Location configToLoc (String name) {
        Location loc = new Location(Bukkit.getWorld(config.getString("locations." + name + ".world")),
                config.getDouble("locations." + name + ".x"),
                config.getDouble("locations." + name + ".y"),
                config.getDouble("locations." + name + ".z"));
        return loc;
    }
вот.
Код:
package ru.goldfox.files;

import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;

import ru.goldfox.files.MessageManager.MessageType;

public class Main  extends JavaPlugin implements Listener {
   
    private static Main instance;
    FileConfiguration config = getConfig();
   
    public static Main instance() {
        return instance;
    }

    public void onEnable() {
        Bukkit.getServer().getPluginManager().registerEvents(this, this);
        Bukkit.getServer().getPluginManager().registerEvents(new KillMob(), this);
    }
   
    public void onDisable() {
       
    }
   
    public boolean checkSender (CommandSender sender) {
        if (sender instanceof Player) {
            return false;
        }
        return true;
    }
   
    public boolean onCommand (CommandSender sender, Command cmd, String label, String[] args) {
        if (cmd.getName().equalsIgnoreCase("savehome")) {
            if (checkSender(sender)) {
                MessageManager.getManager().msg(sender, MessageType.BAD, "Only players can use this command!");
                return true;
            }
            Player p = (Player) sender;
           
            locToConfig(p.getName(), p.getLocation());
            MessageManager.getManager().msg(p, MessageType.GOOD, "Дом установлен!");
            return true;
        }
        if (cmd.getName().equalsIgnoreCase("tphome")) {
            if (checkSender(sender)) {
                MessageManager.getManager().msg(sender, MessageType.BAD, "Only players can use this command!");
                return true;
            }
            Player p = (Player) sender;
           
            Location home = configToLoc(p.getName());
            if (home != null){
            p.teleport(home);
            MessageManager.getManager().msg(p, MessageType.GOOD, "Телепорт домой!");
            return false;
        }
      }
        return false;
    }
   
    public void locToConfig (String name, Location loc) {
        config.set("locations." + name + ".world", loc.getWorld().getName());
        config.set("locations." + name + ".x", loc.getX());
        config.set("locations." + name + ".y", loc.getY());
        config.set("locations." + name + ".z", loc.getZ());
        saveConfig();
    }
   
    public Location configToLoc (String name) {
        Location loc = new Location(Bukkit.getWorld(config.getString("locations." + name + ".world")),
                config.getDouble("locations." + name + ".x"),
                config.getDouble("locations." + name + ".y"),
                config.getDouble("locations." + name + ".z"));
        return loc;
    }
   
    @EventHandler
    public void onPlayerJoin (PlayerJoinEvent e) {
        Player p = e.getPlayer();
       
        MessageManager.getManager().msg(p, MessageType.INFO, "Plugin by GoldFox");
        p.playSound(p.getLocation(), Sound.NOTE_PIANO, 1, 1);
    }
   
    @EventHandler
    public void onBlockBreak (BlockBreakEvent e) {
        Player p = e.getPlayer();
        p.giveExp(100);
       
        if (e.getBlock().getType() != Material.DIAMOND_BLOCK) return;
       
        p.giveExp(500);
        p.damage(2);
        MessageManager.getManager().msg(p, MessageType.BAD, "Зачем ты сломал это блок?");
    }
}
весь код.
 
Ну так ошибка то где? Сделай проверки на нулл, там, где просит.
 
Господи, ты серьезно эту ересь несешь? Консоль ругается потому, что метод, который ты используешь в 63 или 64 строке попросту не существует. Сам сделай метод, который возьмет значения из конфига и на их основе сделает локацию. Проверяешь валидность локации и телепортируешь на нее игрока. Это же такое изи.
 
Так ты запили проверку на валидность,и достань по другому из конфига значение.
Почему он должен пилить? Тебе или ему нужен плагин? Тебе только должны подсказать как решить проблему, а не полностью ее решить. Так что сам делай проверку.
 
я то уже писал мини игру,строк на 5000
Раз уж апнули тему, разрешите орнуть
Правильно! Давай вместе! Пошлем его назуй!
Жаль, что нельзя лайк поставить(. Присоединяюсь.
ТС с таким отношением тебе никто не поможет, иди учить джаву, на крайней случай уж уроки
 
Надеюсь, ТС умрёт от рака мозга, когда еще раз подумает, что ему тут должны помогать. Лично меня он бесит, и, думаю, не меня одного :confused:
 
Вы очень странно относитесь к этому разделу в целом. Сам раздел подразумевает помощь людям в разработке плагинов. Вы же поголовно оскорбляете тех, кто хоть немного тупит. В каждой теме одно и то же: "ТС даун, умри от СПИДа!!11!!1". Это нисколько не показывает вашего интеллекта, а скорее наоборот. Если вы отвечаете в этом разделе, то вы должны(именно должны) помогать своим сообщением, а не обзывать, унижать, оскор****ь. Если ТС чего-либо не понимает, стоит попробовать ему объяснить, если же он и дальше не понимает, вы можете послать его изучать джаву/читать доки, а потом отписаться от уведомлений темы и больше не отвечать в ней. Обзывая же ТСа вы не только пользу не приносите, но еще и апаете тему.
 
Должны? Хм... Пожалуй все-таки нет.
В этом разделе многим то и помогают, но я могу провести аналогию.
Помогать чувачку в этой теме, все-равно что помогать обезьянке которая ничего не умеет, но ещё и требует чтоб ей помогали, и говорит что ты ДОЛЖЕН ей помогать.
Если вы отвечаете здесь, вы должны помогать. Если у вас нет такого желания, то не отвечайте. В чем проблема? Зачем апать и брызгать слюной на ТС?
 
Пожалуйста, не надо использовать слово "ДОЛЖНЫ" никто никому ничего не должен, и отвечать может кто хочет. Если бы ТС хоть что-то понимал, он бы уже после первых сообщений исправил свою ошибку.
Но вместо этого он чуть ли не в каждом втором сообщении говорит "сделай это за меня", может ему лучше в коммерческий раздел обратиться?
В этом разделе как-бы ПОМОГАЮТ а не ДЕЛАЮТ ЗА НЕГО...
И помогли ему уже давно.
Я говорю еще раз, если вам не нравится ТС, его манера ответов, моя манера ответов, то, что ТС не врубается, вы можете ливнуть из темы и перестать наконец гореть по любому поводу. Ведь я так же вас помню, как вы начинали тут, как вы тупили, а теперь вы обзываете всех и каждого. Ну правильно, вы же выросли, зачем теперь другим расти?
 
Назад
Верх