indexosu
Активный участник
- Баллы
- 63
Эвент при попадании молнии в свинью?
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Зачем переизобретать велосипед? Все есть на jd.bukkit.org. Если все очень плохо с английским - есть гугл транслейт.
Если все очень плохо с английским - есть гугл транслейт.
2. Если у вас есть список имён игроков и вам надо из них получить Player, не используйте getPlayerExact, проитерируйте через список онлайн игроков сами и вытащите нужных.
public Player getPlayerExact(String name) {
Validate.notNull(name, "Name cannot be null");
String lname = name.toLowerCase();
for (Player player : getOnlinePlayers()) {
if (player.getName().equalsIgnoreCase(lname)) {
return player;
}
}
return null;
}
Как по мне там очень неудобно, по два часа ищу нужный ивентЗачем переизобретать велосипед? Все есть на jd.bukkit.org. Если все очень плохо с английским - есть гугл транслейт.
Чтобы выбрать за 1 цикл, и чтобы контролить регистрозаисимость самому.Ты говоришь именно о списке игроков — чтобы выбрать их за один цикл или тебе не нравится, то что игнорируется регистр?
Код:public Player getPlayerExact(String name) { Validate.notNull(name, "Name cannot be null"); String lname = name.toLowerCase(); for (Player player : getOnlinePlayers()) { if (player.getName().equalsIgnoreCase(lname)) { return player; } } return null; }

Причём больше меня бесит херня с регистронезависиомтью. Твою мать какого хрена они творят вообще? Я уже писал тему о куче проблем с getOfflinePlayer(), но такое у них везде.
Оно конечно хорошо работает для онлайн мода, но в случае оффлайн сервера это всё превращается в адовый пипец.
Если сделать соответствующий баг-репорт, тебе ответят, что система авторизации Mojang регистронезависима (т.е там нельзя создать игрока fromgate и Fromgate), а проблемы оффлайн-серверов их не волнуют.И что я должен сказать юзерам? Извините но вы должны следить за регами потому что баккитовцы идиоты? А главное регистронезависимость в документации нигде, нигде не прописана, из-за чего я потратил сука 4 месяца на поиск бага, 4 долбанных месяца.Ну собственно ты сам ответилЕсли сделать соответствующий баг-репорт, тебе ответят, что система авторизации Mojang регистронезависима (т.е там нельзя создать игрока fromgate и Fromgate), а проблемы оффлайн-серверов их не волнуют.
Единственный, выход - это строить систему регистрации пользователей так, чтобы она тоже была регистронезависима.
Чтобы после регистрации пользователя Test нельзя было зарегистрировать test, TEST и т.д.
Нет, на сколько я знаю, ещё не ввели. А вообще bukkit-овцы очень медленные существа. Они ещё с 1.4 не могут прикрутить API к спавнерам.Кстати, никто незнает как называется собитие, когда игрок тыкает по рамке и из неё вылетает вещь(в 1,7 ввели)?
Ловим событие PlayerInteractEvent, там берём блок, смотрим, что это табличка(e.getClickedBlock().getMaterial()==Material.табличка...), кастуем её к табличке(Sign sing = e.getClickedBlock().getBlockState()Помогите, как сделать чтобы на табличке писать: [Название плагина] - команду которая должна выполняться - дом? Чтобы при нажатии ЛКМ или ПКМ был эффект выполнения
, анализируем текст на первой строчке и на остальных, если первая верная.Спасибо. А e.getClickedBlock().getBlockState() это мы получаем текст с таблички? И какой именно строчки?Нет, на сколько я знаю, ещё не ввели. А вообще bukkit-овцы очень медленные существа. Они ещё с 1.4 не могут прикрутить API к спавнерам.
Ловим событие PlayerInteractEvent, там берём блок, смотрим, что это табличка(e.getClickedBlock().getMaterial()==Material.табличка...), кастуем её к табличке(Sign sing = e.getClickedBlock().getBlockState(), анализируем текст на первой строчке и на остальных, если первая верная.
e.getClickedBlock().getBlockState() это состояния блока, которое мы приводим к табличкеСпасибо. А e.getClickedBlock().getBlockState() это мы получаем текст с таблички? И какой именно строчки?
Sign s = (Sign)e.getClickedBlock().getBlockState();
s.get(num);
Не OnCommand, a onCommandпомогите пожалуйста
я пишу в чате /sims и мне пишется в чате /sims и ни чего не делается.
вот код
package ru.russia.sims;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.*********ventory.ItemStack;
import org.bukkit.plugin.java.JavaPlugin;
public class main extends JavaPlugin implements Listener{
private static main instance;
public static main instance() {
return instance;
}
public void onEnable() {
Bukkit.getServer().getPluginManager().registerEvents(this, 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("sims"))
{
if (checkSender(sender))
{
sender.sendMessage("Only players can use this command!");
return true;
}
Player p = (Player) sender;
p.getInventory().addItem(new ItemStack(Material.EMERALD));
в
p.sendMessage(ChatColor.GREEN + "Вам выдан предмет SIMS");
return true;
}
return false;
}
@EventHandler
public void onPlayerJoin (PlayerJoinEvent e){
Player p = e.getPlayer();
p.sendMessage(ChatColor.GREEN + "THE Sims loaded");
}
}
а вот plugin.yml
name: The SIMS
main: ru.russia.sims.main
discription: The SIMS in minecraft
version: 1.0
authors:
- Deless503
commands:
sims:
usage: /sims
помогите кто может пожалуйста
Т.е. что он не регистрирует слушателя команды -- вообще пофигу?Не OnCommand, a onCommand
В главном классе слушатель команды регистрируется автоматически.Т.е. что он не регистрирует слушателя команды -- вообще пофигу?
С каких пор(версий)? Я где-то отстал или у меня самопроизвольно плагины не работали с такой ошибкой?В главном классе слушатель команды регистрируется автоматически.
Когда я только начинал, была версия 1.4.7, уже тогда было.С каких пор(версий)? Я где-то отстал или у меня самопроизвольно плагины не работали с такой ошибкой?