Giter VIP home page Giter VIP logo

miniatures's Introduction

Miniatures

Miniature library for Spigot(or anything based on SpigotAPI - PaperMC, SSSpigot).

What is miniature?

Miniature is a world area that is instead of blocks, represented on heads of armorstands.

Example of a miniature

For devs

Usage:

World world = /*world*/;
Vector mostPos = new Vector(10f, 10f, 10f); // most high position in world 
Vector leastPos = mostPos.clone().multiply(0.5f);   // least high position in world
boolean small = false; // 

Miniature.Builder builder = MiniatureAPI.areaToMiniature(world, mostPos, leastPos, small);
Miniature built = builder.get();

Vector offset = new Vector(1, 1, 1);
// list all part positions, and put them to world
built.getPositions().forEach((index, part) -> {
    part.setOffset(offset);
    Vector relPos = part.getRelativePos(); // get relative pos in world
    Vector realPos  = mostPos.clone().add(relPos); // add origin to relative pos
    
    // todo vector to location
    //      get block and set its type to `part.getMaterial();`
    
});

Maven dependency

Repository:

<repository>
    <id>nexus@ethernal</id>
    <url>https://nexus.ethernal.cz/repository/maven/</url>
</repository>

Dependency:

<!-- Source -->
<dependency>
    <groupId>xyz.rgnt</groupId>
    <artifactId>miniatures</artifactId>
    <version>1.0-release</version>
</dependency>

<!-- JavaDocs -->
<dependency>
<groupId>xyz.rgnt</groupId>
    <artifactId>miniatures</artifactId>
    <version>1.0-release</version>
    <classifier>javadoc</classifier>
    <scope>provided</scope>
</dependency>

Compiling

This project requires lombok plugin for getter/setter code generation and is compiled via Apache Maven. We use Jetbrains annotations for javadoc code documentation & inspection. Project can be compiled with shell script ./miniatures-build. Resulting JAR file can be found in directory target/miniatures-{VERSION}-{BUILD TYPE}.jar

Contributors

  • Project owner & developer: rgnt

miniatures's People

Contributors

rgnter avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.