D00py

Tutorial

Sep 18th, 2011
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.42 KB | None | 0 0
  1. package me.doopy.tutorial;
  2.  
  3. import java.io.File;
  4.  
  5. import me.doopy.tutorial.TutorialPlayerListener;
  6.  
  7. import org.bukkit.ChatColor;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandSender;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.Event;
  12. import org.bukkit.event.Event.Priority;
  13. import org.bukkit.inventory.ItemStack;
  14. import org.bukkit.plugin.Plugin;
  15. import org.bukkit.plugin.PluginManager;
  16. import org.bukkit.plugin.java.JavaPlugin;
  17. import org.bukkit.util.config.Configuration;
  18.  
  19. import com.nijiko.permissions.PermissionHandler;
  20. import com.nijikokun.bukkit.Permissions.Permissions;
  21.  
  22. public class Tutorial extends JavaPlugin {
  23.    
  24.     static String version = "0.1";
  25.     public static PermissionHandler permissionHandler;
  26.     TutorialConfigManager cm = new TutorialConfigManager(this);
  27.     boolean skip;
  28.     public static String[] msg = new String[ (int) 100];
  29.     public static String[] cmd = new String[ (int) 100];
  30.     public static boolean[] startswith = new boolean[ (int) 100];
  31.     static String mainDir = "plugins\\Tutorial";
  32.     static File path = new File( mainDir + File.separator + "config.yml" );
  33.     static Configuration config = new Configuration( path );
  34.     public static String getVersion() {
  35.         return version;
  36.     }
  37.     private final TutorialPlayerListener playerListener = new TutorialPlayerListener(this);
  38.  
  39.     @Override
  40.     public void onDisable() {
  41.         System.out.println("[TuT] Tutorial "+ version +" deaktiviert!");
  42.        
  43.     }
  44.  
  45.     @Override
  46.     public void onEnable() {
  47.         System.out.println("[TuT] Tutorial "+ version +" aktiviert!");
  48.        
  49.         setupPermissions();
  50.        
  51.         PluginManager pm = getServer().getPluginManager();
  52.        
  53.         pm.registerEvent(Event.Type.PLAYER_COMMAND_PREPROCESS, this.playerListener, Priority.Normal, this);
  54.         pm.registerEvent(Event.Type.PLAYER_JOIN, this.playerListener, Priority.Normal, this);
  55.        
  56.         File ordner = new File("plugins\\Tutorial");
  57.         if (!ordner.exists()) {
  58.             new File("plugins\\Tutorial\\user").mkdirs();
  59.             System.out.println("[TuT] Tutorial-Ordner wurde nicht gefunden. Wird erstellt...");
  60.         }
  61.         if ( !( path.exists() ) )
  62.         {
  63.             cm.createConfig();
  64.         }
  65.         else
  66.         {
  67.             String root = "tutorials.";
  68.             for (int i = 0; i==99; i++) {
  69.             msg[i] = cm.readFile(root + i + ".message");
  70.             cmd[i] = cm.readFile(root + i + ".command");
  71.             //startswith[i] = cm.readFileBool(root + i + ".startswith");
  72.             }
  73.             }
  74.         }
  75.        
  76.    
  77.    
  78.     private void setupPermissions() { if (permissionHandler != null) { return; }
  79.  
  80.     Plugin permissionsPlugin = this.getServer().getPluginManager().getPlugin("Permissions");
  81.  
  82.     if (permissionsPlugin == null) {
  83.         System.out.println("Permission system not detected, defaulting to OP");
  84.         return;
  85.     }
  86.  
  87.     permissionHandler = ((Permissions) permissionsPlugin).getHandler();
  88.     System.out.println("[TuT] TuT wird das Permissions-System "+((Permissions)permissionsPlugin).getDescription().getFullName() + " benutzen.");
  89.  
  90.     }
  91.    
  92.  
  93.    
  94.     public static void giveloot ( Player player ) {
  95.        
  96.         player.getInventory().addItem(new ItemStack(273, 1));
  97.         player.getInventory().addItem(new ItemStack(274, 1));
  98.         player.getInventory().addItem(new ItemStack(375, 1));
  99.         player.getInventory().addItem(new ItemStack(50, 32));
  100.         player.getInventory().addItem(new ItemStack(272, 1));
  101.         player.getInventory().addItem(new ItemStack(5, 64));
  102.     }
  103.    
  104.     public static void firstjoin (Player player) {
  105.         player.sendMessage(ChatColor.BLUE + "[TuT] " + ChatColor.AQUA + "Willkommen beim Tutorial! Hier wird dir erklärt, wie du welche Befehle benutzen kannst. Um das Tutorial fortzusetzen, gib " + ChatColor.DARK_AQUA + "/tut next " + ChatColor.AQUA + "ein. Wenn du das Tutorial schon einmal beendet hast, gib "+ ChatColor.DARK_AQUA +"/tut skip " + ChatColor.AQUA +"ein, um es zu überspringen.");
  106.     }
  107.    
  108.  
  109.  
  110.    
  111.     @Override
  112.     public boolean onCommand(CommandSender sender, Command cmd, String label, String args[]) {
  113.  
  114.        
  115.         if (sender instanceof Player) {
  116.             Player player = (Player) sender;
  117.            
  118.             if (cmd.getName().equalsIgnoreCase("tut")) {
  119.                        
  120.                 if (!Tutorial.permissionHandler.has( player, "Tutorial.use" )) {
  121.                     player.sendMessage(ChatColor.RED + "Du hast keine Permissions dazu!");
  122.                 }
  123.                
  124.                 if (args[0].compareToIgnoreCase("skip") == 0) {
  125.                     skip = true;
  126.                     player.sendMessage(ChatColor.BLUE + "[TuT] " + ChatColor.AQUA +"Möchtest du wirklich das Tutorial überspringen? Es bietet dir Erklärungen für die Befehle, die du benutzen kannst! Zum Überspringen /tut confirm eingeben.");
  127.                     return true;
  128.                 } else if (args[0].compareToIgnoreCase("confirm") == 0 && skip == true) {
  129.                     player.sendMessage(ChatColor.BLUE + "[TuT] " + ChatColor.AQUA +"Tutorial übersprungen.");
  130.                     giveloot(player);
  131.                     return true;
  132.                 } else if (args[0].compareToIgnoreCase("next") == 0) {
  133.                     int step = cm.readUser(player);
  134.                     player.sendMessage(ChatColor.BLUE + "[TuT] " + ChatColor.AQUA + msg[step]);
  135.                     return true;
  136.                 } else if (args[0] == null) {
  137.                     player.sendMessage(ChatColor.AQUA + "..........." + ChatColor.BLUE + "[Tutorial]" + ChatColor.AQUA + "...........");
  138.                     player.sendMessage(ChatColor.BLUE + "Version: " + ChatColor.AQUA + version);
  139.                     player.sendMessage(ChatColor.BLUE + "Entwickler: " + ChatColor.AQUA + "D00py");
  140.                     player.sendMessage(ChatColor.AQUA + "...........................................................");
  141.                     return true;
  142.                 }
  143.             }
  144.         }
  145.         return false;
  146.     }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment