mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-02-09 07:30:04 +00:00
![Jonathan Coates](/assets/img/avatar_default.png)
I've no motivation for modding right now, but always got time for build system busywork! CC:T (and CC before that) has always published its API docs. However, they're not always the most helpful — they're useful if you know what you're looking for, but aren't a good getting-started guide. Part of the issue here is there's no examples, and everything is described pretty abstractly. I have occasionally tried to improve this (e.g. the peripheral docs in bdffabc08e2eb9895f966c949acc8334a2bf4475), but it's a long road. This commit adds a new example mod, which registers peripherals, an API and a turtle upgrade. While the mod itself isn't exported as part of the docs, we reference blocks of it using Java's new {@snippet} tag. - Switch the Forge project to use NeoForge's new Legacy MDG plugin. We don't *need* to do this, but it means the build logic for Forge and NeoForge is more closely aligned. - Add a new SnippetTaglet, which is a partial backport of Java 18+'s {@snippet}. - Add an example mod. This is a working multi-loader mod, complete with datagen (albeit with no good multi-loader abstractions). - Move our existing <pre>{@code ...}</pre> blocks into the example mod, replacing them with {@snippet}s. - Add a new overview page to the docs, providing some getting-started information. We had this already in the dan200.computercraft.api package docs, but it's not especially visible there.
55 lines
1.2 KiB
Plaintext
55 lines
1.2 KiB
Plaintext
// SPDX-FileCopyrightText: 2022 The CC: Tweaked Developers
|
|
//
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
pluginManagement {
|
|
// Duplicated in buildSrc/build.gradle.kts
|
|
repositories {
|
|
mavenCentral()
|
|
gradlePluginPortal()
|
|
|
|
maven("https://maven.neoforged.net") {
|
|
name = "NeoForge"
|
|
content {
|
|
includeGroup("net.neoforged")
|
|
}
|
|
}
|
|
|
|
maven("https://maven.fabricmc.net/") {
|
|
name = "Fabric"
|
|
content {
|
|
includeGroup("fabric-loom")
|
|
includeGroup("net.fabricmc")
|
|
}
|
|
}
|
|
|
|
maven("https://maven.squiddev.cc") {
|
|
name = "SquidDev"
|
|
content {
|
|
includeGroup("cc.tweaked.vanilla-extract")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
val mcVersion: String by settings
|
|
rootProject.name = "cc-tweaked-$mcVersion"
|
|
|
|
include(":core-api")
|
|
include(":core")
|
|
|
|
include(":common-api")
|
|
include(":common")
|
|
include(":fabric-api")
|
|
include(":fabric")
|
|
include(":forge-api")
|
|
include(":forge")
|
|
|
|
include(":lints")
|
|
include(":standalone")
|
|
include(":web")
|
|
|
|
for (project in rootProject.children) {
|
|
project.projectDir = file("projects/${project.name}")
|
|
}
|