Skip to content
This repository has been archived by the owner on May 27, 2023. It is now read-only.

Version 0.2.0 proposal #11

Closed
wants to merge 44 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
2dc67e4
Create jitpack.yml
Mar 10, 2022
9270b74
style: run Intellij formatter
DamianKocher May 8, 2022
52980f3
refactor: use modern Minestom features, fix typos & suppress unused w…
DamianKocher May 8, 2022
c80ba1e
BREAKING CHANGE: Scaffolding#fromStream() & Scaffolding#fromFile() no…
DamianKocher May 8, 2022
1169773
Merge branch 'master' of https://github.com/DamianKocher/Scaffolding
DamianKocher May 8, 2022
b7dd775
fix(MCEdit Schematic): Legacy block IDs are now converted to state ID…
DamianKocher May 9, 2022
0ca1f7a
tests: Server now finds an open port to listen on
DamianKocher May 9, 2022
6061807
refactor!: Begin refactoring to minimize code duplication between MCE…
DamianKocher May 9, 2022
c1c6028
feat: make Schematic implement Block.Setter
DamianKocher May 9, 2022
0ace170
refactor!: massively change schematic deserialization behavior
DamianKocher May 9, 2022
78132c3
refactor: begin cleaning up readers
DamianKocher May 9, 2022
6f12f3e
refactor: general code cleanup
DamianKocher May 9, 2022
8ad953e
fix: remove references to blueprints
DamianKocher May 9, 2022
f7b5657
feat: add method to check if placing a schematic at a given position …
DamianKocher May 9, 2022
525e334
refactor!: rename Region#size(XYZ) methods to width,length,height
DamianKocher May 9, 2022
5985ddb
Merge branch 'master' of https://github.com/emortaldev/Scaffolding
DamianKocher May 10, 2022
a9d061b
documentation: remove misinformation
DamianKocher May 10, 2022
3efc912
refactor: documentation and code quality improvements
DamianKocher May 12, 2022
c99b4a0
refactor!: prefix all region getter methods with get
DamianKocher May 12, 2022
1d63396
feat: ScaffoldingUtils#loadChunks now returns the region used so that…
DamianKocher May 12, 2022
fdca25c
chore: move from maven to gradle
DamianKocher May 12, 2022
4497846
gradle: java.sourceCompatibility to Java 17
DamianKocher May 12, 2022
87c8bc8
chore: update minestom version
DamianKocher May 12, 2022
6259daf
deps: add minestom as a dependency for tests
DamianKocher May 12, 2022
53d36a2
docs: a lot of documentation
DamianKocher May 12, 2022
0c19296
refactor!: use Point over Pos
DamianKocher May 13, 2022
a3f1ceb
chore: remove outdated information from README
DamianKocher May 13, 2022
9074c11
feat: add new ways to read schematic
DamianKocher May 13, 2022
3aa3188
feat(editor): add WIP editor
DamianKocher May 13, 2022
608cd2d
chore: move README
DamianKocher May 13, 2022
6b97e7a
init(docs): create vitepress documentation module
DamianKocher May 14, 2022
c826039
chore: add even more selfless self promotion
DamianKocher May 14, 2022
e821f84
tests: add junit
DamianKocher May 14, 2022
a22564e
docs: add coming soon notice to incomplete pages
DamianKocher May 17, 2022
cdbd496
docs(core): add documentation to new Scaffolding methods
DamianKocher May 17, 2022
63fec96
style: misc changes
DamianKocher May 17, 2022
170126f
Merge remote-tracking branch 'origin/master'
DamianKocher May 17, 2022
29780f1
Revert "chore: add even more selfless self promotion"
DamianKocher May 17, 2022
65517a7
fully utilizing gradle multi projects
DamianKocher May 17, 2022
2891928
docs(core): add @NotNull annotations
DamianKocher May 17, 2022
67dd76c
chore: add temporary usage guide to README as a placeholder until rea…
DamianKocher May 17, 2022
2e0d0d7
docs: fix typo
DamianKocher May 17, 2022
6ed0156
improve .gitignore, remove unnecessary annotations, and use port 2556…
DamianKocher May 19, 2022
c6e79ad
feat(editor): give player selection tool upon spawning
DamianKocher May 19, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 84 additions & 0 deletions .github/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Scaffolding

Scaffolding is a library for Minestom that allows you to load and place schematics.
> This library is very early in development and has too many bugs to count. For your own safety, you should not use it in a production environment.

> Also expect the API to change quite a bit in the future as this project works towards a 1.0.0 release.

## Getting Started

### Repository

As with Minestom, Scaffolding uses JitPack to distribute releases.

#### Gradle (Kotlin)
Add JitPack as a repository to your ```build.gradle.kts``` file.
```kotlin
repositories {
maven(url = "https://jitpack.io")
}
```

#### Gradle (Groovy)
Add JitPack as a repository to your ```build.gradle``` file.
```groovy
repositories {
maven { url 'https://jitpack.io' }
}
```

#### Maven
Add JitPack as a repository to your ```pom.xml``` file.
```xml
<repositories>
<repository>
<id>jitpack</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
```

### Dependency

Keep an eye out for new releases on [Jitpack](https://jitpack.io/#CrystalGamesMc/scaffolding).

#### Gradle (Kotlin)
Add Scaffolding as a dependency in your ```build.gradle.kts``` file.
```kts
dependencies {
implementation("com.github.CrystalGamesMc:scaffolding:Tag")
}
```

#### Gradle (Groovy)
Add Scaffolding as a dependency in your ```build.gradle``` file.
```groovy
dependencies {
implementation 'com.github.CrystalGamesMc:scaffolding:Tag'
}
```

#### Maven
Add Scaffolding as a dependency in your ```pom.xml``` file.
```xml
<dependencies>
<dependency>
<groupId>com.github.CrystalGamesMc</groupId>
<artifactId>scaffolding</artifactId>
<version>Tag</version>
</dependency>
</dependencies>
```

## Usage
Read
```java
File file = new File("schematics/your_schematic.schematic");
Schematic schematic = Scaffolding.fromFileSync(file);
```

Build
```java
Schematic schematic = ...;
schematic.build(instance, new Pos(0, 64, 0)).join();
```
64 changes: 32 additions & 32 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

# Created by https://www.toptal.com/developers/gitignore/api/maven,intellij+all,java
# Edit at https://www.toptal.com/developers/gitignore?templates=maven,intellij+all,java
# Created by https://www.toptal.com/developers/gitignore/api/intellij+all,gradle,java
# Edit at https://www.toptal.com/developers/gitignore?templates=intellij+all,gradle,java

### Intellij+all ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
Expand Down Expand Up @@ -66,6 +66,9 @@ atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml

# SonarLint plugin
.idea/sonarlint/

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
Expand All @@ -79,20 +82,13 @@ fabric.properties
.idea/caches/build_file_checksums.ser

### Intellij+all Patch ###
# Ignores the whole .idea folder and all .iml files
# See https://github.com/joeblau/gitignore.io/issues/186 and https://github.com/joeblau/gitignore.io/issues/360

.idea/

# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023
# Ignore everything but code style settings and run configurations
# that are supposed to be shared within teams.

*.iml
modules.xml
.idea/misc.xml
*.ipr
.idea/*

# Sonarlint plugin
.idea/sonarlint
!.idea/codeStyles
!.idea/runConfigurations

### Java ###
# Compiled class file
Expand All @@ -118,32 +114,36 @@ modules.xml

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
replay_pid*

### Gradle ###
.gradle
**/build/
!src/**/build/

### Maven ###
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
# https://github.com/takari/maven-wrapper#usage-without-binary-jar
.mvn/wrapper/maven-wrapper.jar

### Maven Patch ###
# Eclipse m2e generated files
# Ignore Gradle GUI config
gradle-app.setting

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar

# Avoid ignore Gradle wrappper properties
!gradle-wrapper.properties

# Cache of project
.gradletasknamecache

# Eclipse Gradle plugin generated files
# Eclipse Core
.project
# JDT-specific (Eclipse Java Development Tools)
.classpath

# End of https://www.toptal.com/developers/gitignore/api/intellij+all,gradle,java

### Minestom ###
extensions/

### Scaffolding ###
*.schematic
*.schem

# End of https://www.toptal.com/developers/gitignore/api/maven,intellij+all,java
*.schem
48 changes: 0 additions & 48 deletions README.md

This file was deleted.

10 changes: 10 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

allprojects {
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}

group = "net.crystalgames"
version = "0.2.0"
}
Loading