当前位置: 首页>>代码示例>>Java>>正文


Java MapCanvas类代码示例

本文整理汇总了Java中org.bukkit.map.MapCanvas的典型用法代码示例。如果您正苦于以下问题:Java MapCanvas类的具体用法?Java MapCanvas怎么用?Java MapCanvas使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


MapCanvas类属于org.bukkit.map包,在下文中一共展示了MapCanvas类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView map, MapCanvas canvas, Player player) {
    // Map
    for (int x = 0; x < 128; ++x) {
        for (int y = 0; y < 128; ++y) {
            canvas.setPixel(x, y, worldMap.colors[y * 128 + x]);
        }
    }

    // Cursors
    MapCursorCollection cursors = canvas.getCursors();
    while (cursors.size() > 0) {
        cursors.removeCursor(cursors.getCursor(0));
    }

    for (UUID key : worldMap.playersVisibleOnMap.keySet()) { // Spigot string -> uuid
        // If this cursor is for a player check visibility with vanish system
        Player other = Bukkit.getPlayer(key); // Spigot
        if (other != null && !player.canSee(other)) {
            continue;
        }

        net.minecraft.world.storage.MapData.MapCoord decoration = (net.minecraft.world.storage.MapData.MapCoord) worldMap.playersVisibleOnMap.get(key);
        cursors.addCursor(decoration.centerX, decoration.centerZ, (byte) (decoration.iconRotation & 15), decoration.iconSize);
    }
}
 
开发者ID:UraniumMC,项目名称:Uranium,代码行数:27,代码来源:CraftMapRenderer.java

示例2: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView map, MapCanvas canvas, Player player) {
    // Map
    for (int x = 0; x < 128; ++x) {
        for (int y = 0; y < 128; ++y) {
            canvas.setPixel(x, y, worldMap.colors[y * 128 + x]);
        }
    }

    // Cursors
    MapCursorCollection cursors = canvas.getCursors();
    while (cursors.size() > 0) {
        cursors.removeCursor(cursors.getCursor(0));
    }

    for (Object key : worldMap.playersVisibleOnMap.keySet()) {
        // If this cursor is for a player check visibility with vanish system
        Player other = Bukkit.getPlayerExact((String) key);
        if (other != null && !player.canSee(other)) {
            continue;
        }

        net.minecraft.world.storage.MapData.MapCoord decoration = (net.minecraft.world.storage.MapData.MapCoord) worldMap.playersVisibleOnMap.get(key);
        cursors.addCursor(decoration.centerX, decoration.centerZ, (byte) (decoration.iconRotation & 15), decoration.iconSize);
    }
}
 
开发者ID:CyberdyneCC,项目名称:ThermosRebased,代码行数:27,代码来源:CraftMapRenderer.java

示例3: drawNumbers

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
public void drawNumbers(MapCanvas canvas)
{
	for(int i = 0; i < icons.length && i < dayOfMonth; i++)
		if(icons[i] != null)
		{
			int numberX = iconStartX + (i % 6) * 18 + (16 - numbers[i].length) / 2;
			
			for(int x = 0; x < numbers[i].length; x++)
			{
				int numberY = iconStartY + (i / 6) * 18 + (16 - numbers[i][x].length) / 2;
				
				for(int y = 0; y < numbers[i][x].length; y++)
				{
					int xx = numberX + x;
					int yy = numberY + y;
					Byte color = numbers[i][x][y];
					
					if(color != null)
						canvas.setPixel(xx, yy, color);
				}
			}
		}
}
 
开发者ID:Limeth,项目名称:Breakpoint,代码行数:24,代码来源:AdventMapRenderer.java

示例4: drawRectangleFade

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
public static void drawRectangleFade(MapCanvas canvas, int startX, int startY, int width, int height, byte[] color, int fadeId)
{
	int colorLength = color.length + color.length - 1;
	double barHeight = height / colorLength;
	for (double bar = 0; bar < colorLength; bar++)
	{
		int barStartY = (int) (barHeight * bar);
		int reminder = (int) bar % 2;
		boolean fade = reminder != 0;
		if (fade)
			for (int x = startX; x < startX + width; x++)
				for (int y = startY; y < startY + height; y++)
				{
					int color1 = (int) (bar - reminder) / 2;
					int color2 = (int) (bar - reminder) / 2 + 1;
					int curColor = (x + y + barStartY) % 2 == fadeId ? color1 : color2;
					canvas.setPixel(x, y + barStartY, color[curColor]);
				}
		else
			for (int x = startX; x < startX + width; x++)
				for (int y = startY; y < startY + height; y++)
					canvas.setPixel(x, y + barStartY, color[(int) (bar / 2)]);
	}
}
 
开发者ID:Limeth,项目名称:Breakpoint,代码行数:25,代码来源:BPMapRenderer.java

示例5: drawAvailableColors

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
public void drawAvailableColors(MapCanvas canvas)
{
	for (int y = 0; y < MAP_SIZE / 4; y++)
		for (int x = 0; x < MAP_SIZE / 4; x++)
		{
			int id = y * (MAP_SIZE / 4) + x;
			try
			{
				drawRectangle(canvas, x * 4, y * 4, 4, 4, BPMapPalette.matchColor(BPMapPalette.colors[id]));
			}
			catch (Exception e)
			{
				return;
			}
		}
}
 
开发者ID:Limeth,项目名称:Breakpoint,代码行数:17,代码来源:BPMapRenderer.java

示例6: renderGraphTick

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public int renderGraphTick(MapCanvas canvas, int nextPosX) {
    int threadCount = threadBean.getThreadCount();
    int daemonCount = threadBean.getDaemonThreadCount();

    //round up to the nearest multiple of 5
    int roundedMax = (int) (5 * (Math.ceil((float) threadCount / 5)));
    int threadHeight = getHeightScaled(roundedMax, threadCount);
    int daemonHeight = getHeightScaled(roundedMax, daemonCount);

    for (int yPos = MAX_HEIGHT - threadHeight; yPos < 128; yPos++) {
        canvas.setPixel(nextPosX, yPos, MAX_COLOR);
    }

    for (int yPos = MAX_HEIGHT - daemonHeight; yPos < 128; yPos++) {
        canvas.setPixel(nextPosX, yPos, USED_COLOR);
    }

    //these is the max number of all threads
    return threadCount;
}
 
开发者ID:games647,项目名称:LagMonitor,代码行数:22,代码来源:ThreadsGraph.java

示例7: renderGraphTick

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public int renderGraphTick(MapCanvas canvas, int nextPosX) {
    for (int i = 0; i < graphRenderers.length; i++) {
        GraphRenderer graphRenderer = graphRenderers[i];
        int position = this.componentLastPos[i];
        position++;

        //index starts with 0 so in the end - 1
        int maxComponentWidth = (i + 1) * componentWidth + i * SPACES - 1;
        if (position > maxComponentWidth) {
            //reset it to the start pos
            position = i * componentWidth + i * SPACES;
        }

        graphRenderer.renderGraphTick(canvas, position);
        this.componentLastPos[i] = position;
    }

    return 100;
}
 
开发者ID:games647,项目名称:LagMonitor,代码行数:21,代码来源:CombinedGraph.java

示例8: execute

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
protected void execute(Event e) {
	SkellettMapRenderer render = SkellettMapRenderer.getRenderer(map.getSingle(e));
	if (render != null) {
		render.update(new MapRenderTask() {
			@SuppressWarnings("deprecation")
			@Override
			public void render(MapView mapView, MapCanvas mapCanvas, Player player) {
				MapCursor cursor = new MapCursor((byte)x.getSingle(e).intValue(), (byte)y.getSingle(e).intValue(), (byte)direction.getSingle(e).intValue(), (byte) 2, true);
				try {
					MapCursor.Type type = MapCursor.Type.valueOf(cursorType.getSingle(e).replace("\"", "").trim().replace(" ", "_").toUpperCase());
					if (type != null) {
						cursor.setType(type);
					}
				} catch (IllegalArgumentException error) {
					Bukkit.getConsoleSender().sendMessage(Skellett.cc(Skellett.prefix + "&cUnknown mapcursor type " + cursorType.getSingle(e)));
					return;
				}
				mapCanvas.getCursors().addCursor(cursor);
			}
		});
	}
}
 
开发者ID:TheLimeGlass,项目名称:Skellett,代码行数:24,代码来源:EffMapDrawCursor.java

示例9: execute

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
protected void execute(Event e) {
	SkellettMapRenderer render = SkellettMapRenderer.getRenderer(map.getSingle(e));
	if (render != null && image != null) {
		Integer xget = 0;
		Integer yget = 0;
		if (x != null || y != null) {
			xget = x.getSingle(e).intValue();
			yget = y.getSingle(e).intValue();
		}
		final Integer xcoord = xget;
		final Integer ycoord = yget;
		render.update(new MapRenderTask() {
			@Override
			public void render(MapView mapView, MapCanvas mapCanvas, Player player) {
				mapCanvas.drawImage(xcoord, ycoord, image.getSingle(e));

			}
		});
	}
}
 
开发者ID:TheLimeGlass,项目名称:Skellett,代码行数:22,代码来源:EffMapDrawImage.java

示例10: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView map, MapCanvas canvas, Player player) {
    // Map
    for (int x = 0; x < 128; ++x) {
        for (int y = 0; y < 128; ++y) {
            canvas.setPixel(x, y, worldMap.colors[y * 128 + x]);
        }
    }

    // Cursors
    MapCursorCollection cursors = canvas.getCursors();
    while (cursors.size() > 0) {
        cursors.removeCursor(cursors.getCursor(0));
    }

    for (Map.Entry<UUID, MapData.MapCoord> key : worldMap.playersVisibleOnMap.entrySet()) {
        // If this cursor is for a player check visibility with vanish system
        Player other = Bukkit.getPlayer(key.getKey());
        if (other != null && !player.canSee(other)) {
            continue;
        }

        MapData.MapCoord decoration = key.getValue();
        cursors.addCursor(decoration.centerX, decoration.centerZ, (byte) (decoration.iconRotation & 15), decoration.iconSize);
    }
}
 
开发者ID:djoveryde,项目名称:KCauldron,代码行数:27,代码来源:CraftMapRenderer.java

示例11: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView map, MapCanvas canvas, Player player) {
    // Map
    for (int x = 0; x < 128; ++x) {
        for (int y = 0; y < 128; ++y) {
            canvas.setPixel(x, y, worldMap.colors[y * 128 + x]);
        }
    }

    // Cursors
    MapCursorCollection cursors = canvas.getCursors();
    while (cursors.size() > 0) {
        cursors.removeCursor(cursors.getCursor(0));
    }

    for (Object key : worldMap.decorations.keySet()) {
        // If this cursor is for a player check visibility with vanish system
        Player other = Bukkit.getPlayerExact((String) key);
        if (other != null && !player.canSee(other)) {
            continue;
        }

        WorldMapDecoration decoration = (WorldMapDecoration) worldMap.decorations.get(key);
        cursors.addCursor(decoration.locX, decoration.locY, (byte) (decoration.rotation & 15), decoration.type);
    }
}
 
开发者ID:OvercastNetwork,项目名称:CraftBukkit,代码行数:27,代码来源:CraftMapRenderer.java

示例12: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
@SuppressWarnings("deprecation")
public void render(MapView map, MapCanvas canvas, Player player) {
    // Only render when on this world
    if (!map.getWorld().equals(plugin.getBeaconzWorld())) {
        return;
    }
    // Only render if the map is in a hand
    ItemStack inMainHand = player.getInventory().getItemInMainHand();
    ItemStack inOffHand = player.getInventory().getItemInOffHand();
    if (inMainHand.getType().equals(Material.MAP) || inOffHand.getType().equals(Material.MAP)) {
        //Bukkit.getLogger().info("DEBUG: render");
        // here's where you do your drawing - see the Javadocs for the MapCanvas class for
        // the methods you can use
        canvas.drawText(10, 10, MinecraftFont.Font, Lang.beaconMapBeaconMap);
        // Get the text
        BeaconObj beacon = plugin.getRegister().getBeaconMap(map.getId());
        if (beacon != null) {
            canvas.drawText(10, 20, MinecraftFont.Font, Lang.generalLocation + ": " + beacon.getName());
            canvas.setPixel(64, 64, (byte) 64);
        } else {
            canvas.drawText(10, 20, MinecraftFont.Font, Lang.beaconMapUnknownBeacon);
        }
    }
}
 
开发者ID:tastybento,项目名称:beaconz,代码行数:26,代码来源:BeaconMap.java

示例13: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView map, MapCanvas canvas, Player player) {
    // Map
    for (int x = 0; x < 128; ++x) {
        for (int y = 0; y < 128; ++y) {
            canvas.setPixel(x, y, worldMap.colors[y * 128 + x]);
        }
    }

    // Cursors
    MapCursorCollection cursors = canvas.getCursors();
    while (cursors.size() > 0) {
        cursors.removeCursor(cursors.getCursor(0));
    }

    for (Object key : worldMap.g.keySet()) {
        // If this cursor is for a player check visibility with vanish system
        Player other = Bukkit.getPlayerExact((String) key);
        if (other != null && !player.canSee(other)) {
            continue;
        }

        WorldMapDecoration decoration = (WorldMapDecoration) worldMap.g.get(key);
        cursors.addCursor(decoration.locX, decoration.locY, (byte) (decoration.rotation & 15), decoration.type);
    }
}
 
开发者ID:AlmuraDev,项目名称:Almura-Server,代码行数:27,代码来源:CraftMapRenderer.java

示例14: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
/**
 * Render image on the map
 * @param mv Map item map view
 * @param mc Map item map canvas
 * @param player Player that the redraw is performed for
 */
@Override
public void render(final MapView mv, final MapCanvas mc, Player player) {
    if (m_isRendered) {
        return;
    }

    m_isRendered = true;
    int idx = 0;
    for (int y = 0; y < MAX_SIZE; y++) {
        for (int x = 0; x < MAX_SIZE; x++) {
            mc.setPixel(x, y, m_img[idx]);
            idx++;
        }
    }
}
 
开发者ID:SBPrime,项目名称:MCPainter,代码行数:22,代码来源:ImgRenderer.java

示例15: render

import org.bukkit.map.MapCanvas; //导入依赖的package包/类
@Override
public void render(MapView view, MapCanvas canvas, Player player){
	if(cacher == null){
		cacher = new CachingRunnable(view.getId(), file);
		Thread thread = ThreadCallback.createThread(cacher, new Runnable() {

			@Override
			public void run() {
				READY.compareAndSet(false, true);
			}

		});
		thread.start();
	} else if(READY.get()){
		if(animation == null){
			animation = new AnimationRunnable(cacher.getPackets(), cacher.getDelay());
			animation.addPlayer(player);
			animation.start();
		} else {
			animation.addPlayer(player);
		}
	}
}
 
开发者ID:CirnoTheGenius,项目名称:ImgMap-BufferOverflow,代码行数:24,代码来源:GifRenderer.java


注:本文中的org.bukkit.map.MapCanvas类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。