Destroyed API (markdown)

Alex 2022-01-07 21:55:17 +01:00
parent dae30644fc
commit d690ba3b13

98
API.md

@ -1,98 +0,0 @@
# Need help?
If you need help coding anything, feel free to hop on [discord](https://discord.gg/ngZCzbU).
# Porting WorldEdit API code to FAWE
Firstly, FAWE isn't meant to modify the behavior of the WorldEdit API. Existing code should run faster simply by having FAWE installed. Porting code (which is using the WorldEdit API) to work async is as easy as putting it in an async thread (e.g. With the bukkit scheduler).
That said, the FAWE API offers additional functionality not already available in WorldEdit. Below are some examples for WorldEdit and FAWE:
# Bukkit Dependency
## Maven:
[1.8 - 1.12.2](https://github.com/boy0001/FastAsyncWorldedit/wiki/API#maven-18---1122)<br>
## Gradle:
[1.8 - 1.12.2](https://github.com/boy0001/FastAsyncWorldedit/wiki/API#gradle-18---1122)<br>
## 1.8 - 1.12.2 (legacy)
> Note: Add FAWE as a dependency **before** WorldEdit (e.g. in `pom.xml` or `build.gradle`)
## Maven 1.8 - 1.12.2
```xml
<!-- FAWE legacy repository -->
<repository>
<id>fawe-repo</id>
<url>http://ci.athion.net/job/FastAsyncWorldEdit/ws/mvn/</url>
</repository>
<!-- FAWE legacy API -->
<dependency>
<groupId>com.boydti</groupId>
<artifactId>fawe-api</artifactId>
<version>latest</version>
</dependency>
```
## Gradle 1.8 - 1.12.2
```gradle
// FAWE legacy repository
repositories {
maven { url 'http://ci.athion.net/job/FastAsyncWorldEdit/ws/mvn/' }
}
// FAWE legacy API
dependencies {
compile 'com.boydti:fawe-api:latest'
}
```
### Compiling
You can compile FAWE with gradle, which is included with this repository:
```
$ gradlew setupDecompWorkspace
$ gradlew build
```
If you want to access the nukkit api, you need to replace `fawe-api` with `fawe-nukkit` and add it too.
## Useful methods for Fawe legacy:
### Threading
- [Performance tips with FAWE](https://github.com/boy0001/FastAsyncWorldedit/wiki/Some-tips-when-using-the-FAWE-API)
- [Run sync/async tasks with the FAWE TaskManager](https://github.com/boy0001/FastAsyncWorldedit/wiki/Fawe-TaskManager#sync-task)
- [Break up complex tasks using FAWE TaskBuilder](https://github.com/boy0001/FastAsyncWorldedit/wiki/TaskBuilder)
### Players
- [FawePlayer](https://github.com/boy0001/FastAsyncWorldedit/wiki/FawePlayer)
- [WorldEdit player](https://github.com/boy0001/FastAsyncWorldedit/wiki/WorldEdit-World-Player)
- [Player Job API](https://github.com/boy0001/FastAsyncWorldedit/wiki/Jobs-API)
- [Player Progress API](https://github.com/boy0001/FastAsyncWorldedit/wiki/Progress-API)
- [Player region restrictions](https://github.com/boy0001/FastAsyncWorldedit/wiki/Region-restriction-API)
### Modify the world Async (or load it)
- [Anvil API](https://github.com/boy0001/FastAsyncWorldedit/wiki/Anvil-API)
- [WorldEdit world](https://github.com/boy0001/FastAsyncWorldedit/wiki/WorldEdit-World-Player)
- [EditSession](https://github.com/boy0001/FastAsyncWorldedit/wiki/WorldEdit-EditSession)
- [Bukkit API wrappers](https://github.com/boy0001/FastAsyncWorldedit/wiki/AsyncWorld)
- [FaweQueue](https://github.com/boy0001/FastAsyncWorldedit/wiki/FaweQueue)
### NBT and Formats
- [Schematic pasting](https://github.com/boy0001/FastAsyncWorldedit/wiki/Pasting-a-schematic)
- [NBT stream API](https://github.com/boy0001/FastAsyncWorldedit/wiki/NBT-stream-API)
- [Custom clipboard formats](https://github.com/boy0001/FastAsyncWorldedit/wiki/Clipboard-API)
- [Recovering corrupt NBT](https://github.com/boy0001/FastAsyncWorldedit/wiki/Recovering-corrupt-NBT-files-(MCA-Schematic-etc.))
### NMS abstraction
- [Light API](https://github.com/boy0001/FastAsyncWorldedit/wiki/Light-API)
- [NMSMappedFaweQueue](https://github.com/boy0001/FastAsyncWorldedit/wiki/FaweQueue#nms-methods)
- [Packet Sending](https://github.com/boy0001/FastAsyncWorldedit/wiki/Packet-sending)
### Web
- [Web API](https://github.com/boy0001/FastAsyncWorldedit/wiki/Web-API)
### Misc Utilities
- [Block and Biome colors](https://github.com/boy0001/FastAsyncWorldedit/wiki/TextureUtil---block-and-biome-coloring)
### Extending features
- [Adding Custom Masks, Patterns or Transforms](https://github.com/boy0001/FastAsyncWorldedit/wiki/Registering-Custom-Masks,-Patterns-and-Transforms)
- [Adding Custom Brushes or Commands](https://github.com/boy0001/FastAsyncWorldedit/wiki/Registering-custom-brushes-or-commands)
- [Adding Custom clipboard formats](https://github.com/boy0001/FastAsyncWorldedit/wiki/Clipboard-API)
- [Javascript API](https://github.com/boy0001/FastAsyncWorldedit/wiki/JavaScript-API)
## FaweAPI class:
https://github.com/boy0001/FastAsyncWorldedit/blob/master/core/src/main/java/com/boydti/fawe/FaweAPI.java