Table of Contents
This documentation doesn't contain full api docs for dynmap. You need a fundamental knowledge from java and the general non api usage from the dynmap.
Add the Dependency
Add the dynmap api as dependency to your maven or gradle project
Gradle
repositories {
maven { url = "https://repo.mikeprimm.com/" }
}
dependencies {
compileOnly "us.dynmap:DynmapCoreAPI:3.7-beta-6"
}
Maven
<repositories>
<repository>
<id>MikeRepo</id>
<url>https://repo.mikeprimm.com/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>us.dynmap</groupId>
<artifactId>DynmapCoreAPI</artifactId>
<version>3.7-beta-6</version>
<scope>provided</scope>
</dependency>
</dependencies>
Register the dependency in your used platform
Make sure to register the dependency in your used platform.
Bukkit
For Bukkit based platforms you should add dynmap
to the depend
or softdepend
array in the plugin.yml.
plugin.yml
...
depend:
- dynmap
Accessing the dynmap api
Use the static method DynmapCommonAPIListener.register
to register an instance of DynmapCommonAPIListener.
The Dynmap plugin or mod will call the method apiEnabled(DynmapCommonAPI api)
when the api becomes enabled.
Link to DynmapCommonAPIListener: https://github.com/webbukkit/dynmap/blob/v3.0/DynmapCoreAPI/src/main/java/org/dynmap/DynmapCommonAPIListener.java
Access the markerAPI:
MarkerSet markerAPI = api.getMarkerAPI();
Working with markers
To create a new marker you need a MarkerSet. You can either use an existing MarkerSet or create a new one.
Creating a new MarkerSet
MarkerSet set = markerAPI.createMarkerSet(
/* Marker set ID */ "setId",
/* Marker set label */ "Display Name",
/* Set of permitted marker icons */ null,
/* Is marker set persistent */ false
);
With the MarkerSet instance you can change the attributes. You can hide that set by default, set layer priorities, min and max zoom levels. For a full reference take a look in the MarkerSet interface.
Accessing an existing MarkerSet
MarkerSet set = markerAPI.getMarkerSet("setId");
Accessing marker icons
MarkerIcon icon = markerAPI.getMarkerIcon("building");
Registering new marker icons
MarkerIcon icon = markerAPI.createMarkerIcon("id", "title", inputStream);
To receive an input stream from a .png file from your plugin you can use
plugin.getResource("myicon.png");
Creating a new marker
String htmlLabel = "<div>Hello World</div>"
Marker marker = set.createMarker(
/* Marker ID */ "uniqueMarkerId",
/* Marker label */ htmlLabel,
/* Process label as HTML */ true,
/* World to display marker in */ "world",
/* X coordinate */ 10,
/* Y coordinate */ 20,
/* Z coordinate */ 30,
/* Related MarkerIcon object */ icon,
/* Marker is persistent */ false
);
Contents
Setup
- Base Plugin Settings
- Web Setup
- Storage Setup
- HD Map Configuration
- World and template settings
- Guides
Advanced Configuration
- Advanced Map Configuration
- Component Configuration
- Configuration of worlds
- Exporting World Data in Wavefront OBJ Format
- External Webserver Advanced
Mod Support
- Support for Minecraft Servers other than CraftBukkit
- Support for MinecraftForge based mods
- Support for Tekkit
- Custom Block Definitions
- Model Definition Files
- Texture Definition Files
- Defining a Block using a Custom Block Renderer
- Defining a Block using a Volumetric Model
- Defining a Cuboid Block
- Defining a Simple Block
- Defining Cuboid Models
- Defining Volumetric Models
- Special texture file types
- Using custom block renderers
- Incompatible mods