GalacticraftAPI icon indicating copy to clipboard operation
GalacticraftAPI copied to clipboard

Addon API

Open JustPyrrha opened this issue 6 years ago • 0 comments

Creating an API to allow developers to make addons.

Addon devs would use Fabric's modImplementation system in their build.gradle

repositories {
    maven { url = "https://cdn.hrzn.studio/maven" }
}

dependencies {
    modImplementation("com.hrznstudio:galacticraft:1.0.0")
    include modImplementation("com.hrznstudio:galacticraft-api:1.0.0")
}

And add GC:R to their fabric.mod.json

{
    "depends": {
        "galacticraft-api": "*",
    },
    "suggests": {
        "galacticraft-rewoven": "*"
    }
}

Devs would then use classes in the com.hrznstudio.galacticraft.api package to create their addons.

Documentation would is also required for this. It would include basic examples for the main features of the API along with a Javadoc.

Project

  • [x] Move API into its own module.
  • [x] Separate artifact output for API.

API

  • [x] Dimensions (Planets, Moons, Solar Systems, etc)
  • [ ] Vehicles (Rockets, Buggies, etc)
  • [ ] Blocks (Launch Pads, Ores for other planets, etc)
  • [ ] Space Race Integration
  • [ ] Gear (Oxygen Mask, Thermal Gear, etc)
  • [ ] Unlocks (Schematics)
  • [x] Gases (atmospherics)

Docs

  • [x] Dev Environment Setup
  • [x] Basic Examples
  • [ ] Javadocs

Edit (10/12/2019): Update to reflect the latest fabric-loom changes. Edit (15/06/2020): Changed tasks and update install steps

JustPyrrha avatar Mar 18 '19 03:03 JustPyrrha