Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[TuT] Tworzenie pluginu.


sensus12

Rekomendowane odpowiedzi

Opublikowano

Witajcie. W moim poprzednim poradniku napisałem że to koniec tworzenia pluginów, lecz postanowiłem jednak zrobić poradnik.

 

Okej, korzystając z kodu z przed-ostatniego poradnika (tj:)

 

 

package me.sensus.PluginDlaMPC;

import java.util.logging.Logger;

import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.inventory.PlayerInventory;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;

public class PluginDlaMPC extends JavaPlugin implements Listener
{
       public final Logger logger = Logger.getLogger("Minecraft");


       @Override
       public void onEnable()
       {

               PluginDescriptionFile pdfFile = getDescription();
               this.logger.info(pdfFile.getName() + " zostal wlaczony" + pdfFile.getVersion());
               this.getServer().getPluginManager().registerEvents(this, this);
       }
       @Override
       public void onDisable()
       {
               PluginDescriptionFile pdfFile = getDescription();
               this.logger.info(pdfFile.getName() + " zostal wylaczony");
       }

       @EventHandler(priority = EventPriority.HIGHEST)
       public void onPlayerJoin(PlayerJoinEvent event)
       {
       Player player = event.getPlayer();
       PlayerInventory inventory = player.getInventory();

       if((inventory.contains(Material.ARROW) && !player.isOp())){
               inventory.remove(Material.ARROW);
               player.sendMessage(ChatColor.AQUA + "Hemm, dlaczego masz strzaly?");
       }
               }
       }


 

 

 

Zrobimy plugin który będzie blokował (jeżeli gracz nie ma permisji) położenie/rozwalenie klockla. (przydaje się jak chce się kogoś wkurzyć).

 

Okej więc ten kawałek kodu:

public void onPlayerJoin(PlayerJoinEvent event)
       {
       Player player = event.getPlayer();
       PlayerInventory inventory = player.getInventory();

       if((inventory.contains(Material.ARROW) && !player.isOp())){
               inventory.remove(Material.ARROW);
               player.sendMessage(ChatColor.AQUA + "Hemm, dlaczego masz strzaly?");
       }
               }

Zmieńmy na:

   public void onBlockPlaveEvent(BlockPlaceEvent event){
       if(!event.getPlayer().hasPermission("block.place")){
           event.setCancelled(true);
       }
   }
   @EventHandler
   public void onBlockBreak(BlockBreakEvent event)
   {
       if(!event.getPlayer().hasPermission("block.break")){
           event.setCancelled(true);
       }
   }

(pamiętajmy że musimy zimportować i pousuwać niepotrzebne.)

Okej więc:

if(!event.getPlayer().hasPermission("block.place"))

oznacza że jeżeli gracz nie ma uprawnień block.place to:

 

event.setCancelled(true);

nie pozwoli na postawienie bloka (jak postawi to to "skancluję/zablokuję").

 

Tak samo jest w przypadku "Break"

<>

Opublikowano

Poradnik niby dobry....

 

Jutro zobacze jak dziala i dam edita.

 

http://o.aolcdn.com/hss/storage/midas/dbb2fba7a1724ff9f49593989439ae90/203012134/rih.gif

Opublikowano

Dzięki za opinie.

 

Btw nie wiem czy będę robił dalej tuty z tego powodu (jak mi nie otworzą tematu to nie bd robił):

 

http://www.mpcforum.pl/topic/727435-poradnik-tworzenie-pluginow/#entry5262858

(kierzek ftw!)

 

 

@Okej nie będzie poradników skoro ten "adminek" nie potrafi odróżnić 2 tematów + nie odpisuje na pw a odczytał.

 

pozdro.

<>

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...