Advertisement
Mouamle

Java >_<

Jul 31st, 2015
552
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.02 KB | None | 0 0
  1. package com.Mouamle.Rutials;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.Location;
  6. import org.bukkit.Material;
  7. import org.bukkit.World.Environment;
  8. import org.bukkit.block.Block;
  9. import org.bukkit.entity.ArmorStand;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.EventHandler;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.event.player.PlayerInteractEvent;
  14. import org.bukkit.inventory.ItemStack;
  15. import org.bukkit.util.EulerAngle;
  16.  
  17.  
  18.  
  19. public class Altar implements Listener{
  20.            
  21.     EulerAngle CoreHand = EulerAngle.ZERO.add(300, 0, 0);
  22.  
  23.    
  24.     @EventHandler
  25.     public void onInteractEvent(PlayerInteractEvent event) {
  26.         if (event.getAction() == org.bukkit.event.block.Action.RIGHT_CLICK_BLOCK ) {
  27.            
  28.             if ( event.getClickedBlock().getType() == Material.ENDER_STONE ){
  29.                
  30.                 if ( event.getItem().getType() == Material.NETHER_STAR){
  31.                    
  32.                     // Player and Core variables
  33.                     Player p = event.getPlayer();
  34.                     Block Core = event.getClickedBlock();
  35.  
  36.                    
  37.                     // Core X, Y, Z
  38.                     int CoreX = Core.getX();
  39.                     int CoreY = Core.getY();
  40.                     int CoreZ = Core.getZ();
  41.                    
  42.                     // Core Location
  43.                 //  Location CoreLocation = Core.getLocation();
  44.                    
  45.  
  46.                     // Check the area for the altar and Summoning the altar
  47.                  if(     Bukkit.getWorldType().equals(Environment.NETHER) ||
  48.                          p.getWorld().getBlockAt(CoreX + 3, CoreY, CoreZ).getType() != Material.AIR ||
  49.                          p.getWorld().getBlockAt(CoreX, CoreY, CoreZ + 3).getType() != Material.AIR ||
  50.                          p.getWorld().getBlockAt(CoreX - 3, CoreY, CoreZ).getType() != Material.AIR ||
  51.                          p.getWorld().getBlockAt(CoreX, CoreY, CoreZ - 3).getType() != Material.AIR ||
  52.                          p.getWorld().getBlockAt(CoreX, CoreY + 1, CoreZ).getType() != Material.AIR ||
  53.                          p.getWorld().getBlockAt(CoreX, CoreY - 1, CoreZ).getType() == Material.AIR
  54.                         ){p.sendMessage(ChatColor.RED + "Can't summon the altar here!");}else{
  55.                             p.getWorld().getBlockAt(CoreX, CoreY, CoreZ + 3).setType(Material.OBSIDIAN);
  56.                             p.getWorld().getBlockAt(CoreX, CoreY, CoreZ - 3).setType(Material.OBSIDIAN);
  57.                             p.getWorld().getBlockAt(CoreX + 3, CoreY, CoreZ).setType(Material.OBSIDIAN);
  58.                             p.getWorld().getBlockAt(CoreX - 3, CoreY, CoreZ).setType(Material.OBSIDIAN);
  59.                             p.getWorld().getBlockAt(CoreX, CoreY, CoreZ).setType(Material.AIR);
  60.                             p.sendMessage( ChatColor.GREEN + "Sucssufly summon the altar!");
  61.                            
  62.                             Location CoreL = Core.getLocation();
  63.                            
  64.                             ItemStack Sword = new ItemStack(Material.DIAMOND_SWORD);
  65.                            
  66.                             Location CorNewL = CoreL.add(0.75, 0, 0).subtract(0, 0.25, 0);
  67.                            
  68.                             ArmorStand CoreStand = p.getWorld().spawn(CorNewL, ArmorStand.class);
  69.  
  70.                             CoreStand.setBasePlate(false);
  71.                             CoreStand.setGravity(false);
  72.                             CoreStand.setArms(true);
  73.                             CoreStand.setRightArmPose(CoreHand);
  74.                             CoreStand.setItemInHand(Sword);
  75.                             p.getWorld().getBlockAt(CoreX, CoreY, CoreZ).setType(Material.ENDER_STONE);
  76.                            
  77.                            
  78.                         }
  79.                    
  80.                    
  81.                     //set.getBlockAt(CoreX +3 , CoreY, CoreZ);
  82.                    
  83.                    
  84.                    
  85.                    
  86.                 }else if ( event.getItem().getType() == Material.NETHER_BRICK_ITEM ){
  87.                     Player p = event.getPlayer();
  88.                     Block Core = event.getClickedBlock();
  89.                    
  90.                     // Core X, Y, Z
  91.                     int CoreX = Core.getX();
  92.                     int CoreY = Core.getY();
  93.                     int CoreZ = Core.getZ();
  94.                    
  95.                    
  96.                     if (p.getWorld().getBlockAt(CoreX, CoreY, CoreZ + 3).getType() == Material.OBSIDIAN &&
  97.                         p.getWorld().getBlockAt(CoreX, CoreY, CoreZ - 3).getType() == Material.OBSIDIAN &&
  98.                         p.getWorld().getBlockAt(CoreX + 3, CoreY, CoreZ).getType() == Material.OBSIDIAN &&
  99.                         p.getWorld().getBlockAt(CoreX - 3, CoreY, CoreZ).getType() == Material.OBSIDIAN
  100.                         ){
  101.                        
  102.                         p.getWorld().getBlockAt(CoreX, CoreY, CoreZ).setType(Material.AIR);
  103.                         p.getWorld().getBlockAt(CoreX, CoreY, CoreZ + 3).setType(Material.AIR);
  104.                         p.getWorld().getBlockAt(CoreX, CoreY, CoreZ - 3).setType(Material.AIR);
  105.                         p.getWorld().getBlockAt(CoreX + 3, CoreY, CoreZ).setType(Material.AIR);
  106.                         p.getWorld().getBlockAt(CoreX - 3, CoreY, CoreZ).setType(Material.AIR);
  107.                         p.sendMessage(ChatColor.GREEN + "Sucssufly remove the altar");
  108.                     }else{
  109.                         p.sendMessage(ChatColor.RED + "I can't see any altar here!");
  110.                     }
  111.                 }
  112.                
  113.             }
  114.            
  115.         }
  116.    
  117.     }
  118.    
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement