org.bukkit.Material#SIGN_POST源码实例Demo

下面列出了org.bukkit.Material#SIGN_POST 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: AnnihilationPro   文件: Signs.java
private void placeSignInWorld(AnniSign asign, String[] lore)
{
	Location loc = asign.getLocation().toLocation();
	Block block = loc.getWorld().getBlockAt(loc);//asign.getLocation().toLocation().getBlock();
	if(block.getType() != Material.WALL_SIGN && block.getType() != Material.SIGN_POST)
		block.getWorld().getBlockAt(loc).setType(asign.isSignPost() ? Material.SIGN_POST : Material.WALL_SIGN);
	
	Sign sign = (Sign)block.getState();
	if(sign != null)
	{
		for(int x = 0; x < lore.length; x++)
			sign.setLine(x, lore[x]);
		org.bukkit.material.Sign matSign = new org.bukkit.material.Sign(block.getType());
		matSign.setFacingDirection(asign.getFacingDirection());
		sign.setData(matSign);
		sign.update(true);
	}
}
 
源代码2 项目: ZombieEscape   文件: Game.java
/**
 * Creates a door with a given time in seconds.
 *
 * @param player the player who is setting the arena up
 * @param input  the time, in seconds, the door will take to open
 */
private void addDoor(Player player, String input) {
    Block block = player.getEyeLocation().getBlock();
    Material material = block.getType();
    if (material != Material.SIGN_POST && material != Material.WALL_SIGN) {
        Messages.BLOCK_NOT_SIGN.send(player);
        return;
    }

    int seconds = Utils.getNumber(player, input);

    if (seconds < 0) {
        Messages.BAD_SECONDS.send(player);
        return;
    }

    int signID = editedFile.createListLocation(player, block.getLocation(), "Doors");
    editedFile.getConfig().set("Doors." + signID + ".Timer", seconds);
    editedFile.saveFile();
    Messages.CREATED_SIGN.send(player, signID, seconds);
}
 
源代码3 项目: AnnihilationPro   文件: Signs.java
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void signClickCheck(PlayerInteractEvent event)
{
	if(event.getAction() == Action.RIGHT_CLICK_BLOCK)
	{
		Block b = event.getClickedBlock();
		if(b != null)
		{
			if(b.getType() == Material.WALL_SIGN || b.getType() == Material.SIGN_POST)
			{
				final Location loc = b.getLocation();
				final Player p = event.getPlayer();
				AnniSign sign = this.signs.get(MapKey.getKey(loc));
				if(sign != null)
				{
					event.setCancelled(true);
					if(sign.getType().equals(SignType.Team))
					{
						AnniTeam team = sign.getType().getTeam();
						if(team != null)
						{
							p.performCommand("team "+team.getName());
						}
					}
					else if(sign.getType().equals(SignType.Brewing))
					{
						ShopMenu.openBrewingShop(p);
					}
					else if(sign.getType().equals(SignType.Weapon))
					{
						ShopMenu.openWeaponShop(p);
					}
				}
			}
		}
	}
}
 
源代码4 项目: AnnihilationPro   文件: Signs.java
@EventHandler(priority = EventPriority.LOW,ignoreCancelled = true)
public void signBreakCheck(BlockBreakEvent event)
{
	if(event.getBlock() != null && event.getPlayer().getGameMode() != GameMode.CREATIVE)
	{
		if(event.getBlock().getType() == Material.WALL_SIGN || event.getBlock().getType() == Material.SIGN_POST)
		{
			MapKey key = MapKey.getKey(event.getBlock().getLocation());
			if(this.signs.containsKey(key))
				event.setCancelled(true);
		}
	}
}
 
源代码5 项目: Kettle   文件: Sign.java
public Sign() {
    super(Material.SIGN_POST);
}
 
源代码6 项目: ProjectAres   文件: Materials.java
public static boolean isSign(Material material) {
    return material == Material.SIGN_POST || material == Material.WALL_SIGN;
}
 
源代码7 项目: Shopkeepers   文件: Utils.java
public static boolean isSign(Material material) {
	return material == Material.WALL_SIGN || material == Material.SIGN_POST || material == Material.SIGN;
}
 
 方法所在类
 同类方法