mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-12-12 11:10:29 +00:00
Merge branch 'mc-1.14.x' into mc-1.15.x
This commit is contained in:
commit
d7729337ac
@ -14,5 +14,9 @@ trim_trailing_whitespace = false
|
|||||||
[*.sexp]
|
[*.sexp]
|
||||||
indent_size = 2
|
indent_size = 2
|
||||||
|
|
||||||
|
[*.yml]
|
||||||
|
indent_size = 2
|
||||||
|
|
||||||
|
|
||||||
[*.properties]
|
[*.properties]
|
||||||
insert_final_newline = false
|
insert_final_newline = false
|
||||||
|
2
.gitattributes
vendored
Normal file
2
.gitattributes
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Ignore changes in generated files
|
||||||
|
src/generated/resources/data/** linguist-generated
|
17
.github/workflows/main-ci.yml
vendored
17
.github/workflows/main-ci.yml
vendored
@ -8,15 +8,23 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v1
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Set up JDK 1.8
|
- name: Set up JDK 1.8
|
||||||
uses: actions/setup-java@v1
|
uses: actions/setup-java@v1
|
||||||
with:
|
with:
|
||||||
java-version: 1.8
|
java-version: 1.8
|
||||||
|
|
||||||
|
- name: Cache gradle dependencies
|
||||||
|
uses: actions/cache@v1
|
||||||
|
with:
|
||||||
|
path: ~/.gradle/caches
|
||||||
|
key: ${{ runner.os }}-gradle-${{ hashFiles('gradle.properties') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-gradle-
|
||||||
|
|
||||||
- name: Build with Gradle
|
- name: Build with Gradle
|
||||||
run: ./gradlew build --no-daemon
|
run: ./gradlew build --no-daemon || ./gradlew build --no-daemon
|
||||||
|
|
||||||
- name: Upload Jar
|
- name: Upload Jar
|
||||||
uses: actions/upload-artifact@v1
|
uses: actions/upload-artifact@v1
|
||||||
@ -34,6 +42,9 @@ jobs:
|
|||||||
- name: Lint Lua code
|
- name: Lint Lua code
|
||||||
run: |
|
run: |
|
||||||
test -d bin || mkdir bin
|
test -d bin || mkdir bin
|
||||||
test -f bin/illuaminate || wget -q -Obin/illuaminate https://squiddev.cc/illuaminate/bin/illuaminate
|
test -f bin/illuaminate || wget -q -Obin/illuaminate https://squiddev.cc/illuaminate/linux-x86-64/illuaminate
|
||||||
chmod +x bin/illuaminate
|
chmod +x bin/illuaminate
|
||||||
bin/illuaminate lint
|
bin/illuaminate lint
|
||||||
|
|
||||||
|
- name: Check whitespace
|
||||||
|
run: python3 tools/check-lines.py
|
||||||
|
16
.github/workflows/make-doc.sh
vendored
Executable file
16
.github/workflows/make-doc.sh
vendored
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
DEST="${GITHUB_REF#refs/*/}"
|
||||||
|
echo "Uploading docs to https://tweaked.cc/$DEST"
|
||||||
|
|
||||||
|
# Setup ssh key
|
||||||
|
mkdir -p "$HOME/.ssh/"
|
||||||
|
echo "$SSH_KEY" > "$HOME/.ssh/key"
|
||||||
|
chmod 600 "$HOME/.ssh/key"
|
||||||
|
|
||||||
|
# And upload
|
||||||
|
rsync -avc -e "ssh -i $HOME/.ssh/key -o StrictHostKeyChecking=no -p $SSH_PORT" \
|
||||||
|
"$GITHUB_WORKSPACE/doc/" \
|
||||||
|
"$SSH_USER@$SSH_HOST:/var/www/tweaked.cc/$DEST"
|
29
.github/workflows/make-doc.yml
vendored
Normal file
29
.github/workflows/make-doc.yml
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
name: Build documentation
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
tags:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
make_doc:
|
||||||
|
name: Build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v1
|
||||||
|
|
||||||
|
- name: Build documentation
|
||||||
|
run: |
|
||||||
|
test -d bin || mkdir bin
|
||||||
|
test -f bin/illuaminate || wget -q -Obin/illuaminate https://squiddev.cc/illuaminate/linux-x86-64/illuaminate
|
||||||
|
chmod +x bin/illuaminate
|
||||||
|
bin/illuaminate doc-gen
|
||||||
|
|
||||||
|
- name: Upload documentation
|
||||||
|
run: .github/workflows/make-doc.sh 2> /dev/null
|
||||||
|
env:
|
||||||
|
SSH_KEY: ${{ secrets.SSH_KEY }}
|
||||||
|
SSH_USER: ${{ secrets.SSH_USER }}
|
||||||
|
SSH_HOST: ${{ secrets.SSH_HOST }}
|
||||||
|
SSH_PORT: ${{ secrets.SSH_PORT }}
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -3,6 +3,8 @@
|
|||||||
/logs
|
/logs
|
||||||
/build
|
/build
|
||||||
/out
|
/out
|
||||||
|
/doc/**/*.html
|
||||||
|
/doc/index.json
|
||||||
|
|
||||||
# Runtime directories
|
# Runtime directories
|
||||||
/run
|
/run
|
||||||
@ -21,3 +23,5 @@
|
|||||||
.settings/
|
.settings/
|
||||||
bin/
|
bin/
|
||||||
*.launch
|
*.launch
|
||||||
|
|
||||||
|
/src/generated/resources/.cache
|
||||||
|
36
CONTRIBUTING.md
Normal file
36
CONTRIBUTING.md
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
# Contributing to CC: Tweaked
|
||||||
|
As with many open source projects, CC: Tweaked thrives on contributions from other people! This document (hopefully)
|
||||||
|
provides an introduction as to how to get started in helping out.
|
||||||
|
|
||||||
|
If you've any other questions, [just ask the community][community] or [open an issue][new-issue].
|
||||||
|
|
||||||
|
## Reporting issues
|
||||||
|
If you have a bug, suggestion, or other feedback, the best thing to do is [file an issue][new-issue]. When doing so,
|
||||||
|
do use the issue templates - they provide a useful hint on what information to provide.
|
||||||
|
|
||||||
|
## Developing
|
||||||
|
In order to develop CC: Tweaked, you'll need to download the source code and then run it. This is a pretty simple
|
||||||
|
process.
|
||||||
|
|
||||||
|
- **Clone the repository:** `git clone https://github.com/SquidDev-CC/CC-Tweaked.git && cd CC-Tweaked`
|
||||||
|
- **Setup Forge:** `./gradlew build`
|
||||||
|
- **Run Minecraft:** `./gradlew runClient` (or run the `GradleStart` class from your IDE).
|
||||||
|
|
||||||
|
If you want to run CC:T in a normal Minecraft instance, run `./gradlew build` and copy the `.jar` from `build/libs`.
|
||||||
|
These commands may take a few minutes to run the first time, as the environment is set up, but should be much faster
|
||||||
|
afterwards.
|
||||||
|
|
||||||
|
### Code linters
|
||||||
|
CC: Tweaked uses a couple of "linters" on its source code, to enforce a consistent style across the project. While these
|
||||||
|
are run whenever you submit a PR, it's often useful to run this before committing.
|
||||||
|
|
||||||
|
- **[Checkstyle]:** Checks Java code to ensure it is consistently formatted. This can be run with `./gradlew build` or
|
||||||
|
`./gradle check`.
|
||||||
|
- **[illuaminate]:** Checks Lua code for semantic and styleistic issues. See [the usage section][illuaminate-usage] for
|
||||||
|
how to download and run it.
|
||||||
|
|
||||||
|
[new-issue]: https://github.com/SquidDev-CC/CC-Tweaked/issues/new/choose "Create a new issue"
|
||||||
|
[community]: README.md#Community "Get in touch with the community."
|
||||||
|
[checkstyle]: https://checkstyle.org/
|
||||||
|
[illuaminate]: https://github.com/SquidDev/illuaminate/
|
||||||
|
[illuaminate-usage]: https://github.com/SquidDev/illuaminate/blob/master/README.md#usage
|
18
README.md
18
README.md
@ -37,20 +37,14 @@ several features have been included, such as full block modems, the Cobalt runti
|
|||||||
computers.
|
computers.
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
Any contribution is welcome, be that using the mod, reporting bugs or contributing code. In order to start helping
|
Any contribution is welcome, be that using the mod, reporting bugs or contributing code. If you want to get started
|
||||||
develop CC:T, you'll need to follow these steps:
|
developing the mod, [check out the instructions here](CONTRIBUTING.md#developing).
|
||||||
|
|
||||||
- **Clone the repository:** `git clone https://github.com/SquidDev-CC/CC-Tweaked.git && cd CC-Tweaked`
|
|
||||||
- **Setup Forge:** `./gradlew build`
|
|
||||||
- **Test your changes:** `./gradlew runClient` (or run the `GradleStart` class from your IDE).
|
|
||||||
|
|
||||||
If you want to run CC:T in a normal Minecraft instance, run `./gradlew build` and copy the `.jar` from `build/libs`.
|
|
||||||
|
|
||||||
## Community
|
## Community
|
||||||
If you need help getting started with CC: Tweaked, want to show off your latest project, or just want to chat about
|
If you need help getting started with CC: Tweaked, want to show off your latest project, or just want to chat about
|
||||||
ComputerCraft we have a [forum](https://forums.computercraft.cc/) and [Discord guild](https://discord.gg/H2UyJXe)!
|
ComputerCraft we have a [forum](https://forums.computercraft.cc/) and [Discord guild](https://discord.computercraft.cc)!
|
||||||
There's also a fairly populated, albeit quiet [IRC channel](http://webchat.esper.net/?channels=#computercraft), if
|
There's also a fairly populated, albeit quiet [IRC channel](http://webchat.esper.net/?channels=computercraft), if that's
|
||||||
that's more your cup of tea.
|
more your cup of tea.
|
||||||
|
|
||||||
I'd generally recommend you don't contact me directly (email, DM, etc...) unless absolutely necessary (i.e. in order to
|
I'd generally recommend you don't contact me directly (email, DM, etc...) unless absolutely necessary (i.e. in order to
|
||||||
report exploits). You'll get a far quicker response if you ask the whole community!
|
report exploits). You'll get a far quicker response if you ask the whole community!
|
||||||
@ -66,7 +60,7 @@ dependencies {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation "org.squiddev:cc-tweaked-${mc_version}:${cct_version}"
|
implementation fg.deobf("org.squiddev:cc-tweaked-${mc_version}:${cct_version}")
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
27
build.gradle
27
build.gradle
@ -57,6 +57,19 @@ minecraft {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
data {
|
||||||
|
workingDirectory project.file('run')
|
||||||
|
property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
|
||||||
|
property 'forge.logging.console.level', 'debug'
|
||||||
|
|
||||||
|
args '--mod', 'computercraft', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
|
||||||
|
mods {
|
||||||
|
computercraft {
|
||||||
|
source sourceSets.main
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mappings channel: 'snapshot', version: "${mappings_version}".toString()
|
mappings channel: 'snapshot', version: "${mappings_version}".toString()
|
||||||
@ -64,19 +77,15 @@ minecraft {
|
|||||||
accessTransformer file('src/main/resources/META-INF/accesstransformer.cfg')
|
accessTransformer file('src/main/resources/META-INF/accesstransformer.cfg')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sourceSets.main.resources {
|
||||||
|
srcDir 'src/generated/resources'
|
||||||
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
maven {
|
|
||||||
name "JEI"
|
|
||||||
url "https://dvs1.progwml6.com/files/maven"
|
|
||||||
}
|
|
||||||
maven {
|
maven {
|
||||||
name "SquidDev"
|
name "SquidDev"
|
||||||
url "https://squiddev.cc/maven"
|
url "https://squiddev.cc/maven"
|
||||||
}
|
}
|
||||||
maven {
|
|
||||||
name "CraftTweaker"
|
|
||||||
url "https://maven.blamejared.com/"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
@ -93,7 +102,7 @@ dependencies {
|
|||||||
compileOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2:api")
|
compileOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2:api")
|
||||||
runtimeOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2")
|
runtimeOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2")
|
||||||
|
|
||||||
shade 'org.squiddev:Cobalt:0.5.0-SNAPSHOT'
|
shade 'org.squiddev:Cobalt:0.5.1-SNAPSHOT'
|
||||||
|
|
||||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.2'
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.2'
|
||||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.4.2'
|
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.4.2'
|
||||||
|
11
doc/index.md
Normal file
11
doc/index.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# ![CC: Tweaked](logo.png) [![Download CC: Tweaked on CurseForge](http://cf.way2muchnoise.eu/title/cc-tweaked.svg)](https://minecraft.curseforge.com/projects/cc-tweaked "Download CC: Tweaked on CurseForge")
|
||||||
|
|
||||||
|
CC: Tweaked is a fork of [ComputerCraft], adding programmable computers, turtles and more to Minecraft.
|
||||||
|
|
||||||
|
This website contains documentation for all Lua libraries and APIs from the latest version of CC: Tweaked. This
|
||||||
|
documentation is still in development, so will most likely be incomplete. If you've found something you think is wrong,
|
||||||
|
or would like to help out [please get in touch on GitHub][gh].
|
||||||
|
|
||||||
|
[bug]: https://github.com/SquidDev-CC/CC-Tweaked/issues/new/choose
|
||||||
|
[computercraft]: https://github.com/dan200/ComputerCraft "ComputerCraft on GitHub"
|
||||||
|
[gh]: https://github.com/SquidDev-CC/CC-Tweaked "CC:Tweaked on GitHub"
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
6
doc/stub/commands.lua
Normal file
6
doc/stub/commands.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
function exec(command) end
|
||||||
|
function execAsync(commad) end
|
||||||
|
function list() end
|
||||||
|
function getBlockPosition() end
|
||||||
|
function getBlockInfos(min_x, min_y, min_z, max_x, max_y, max_z) end
|
||||||
|
function getBlockInfo(x, y, z) end
|
42
doc/stub/fs.lua
Normal file
42
doc/stub/fs.lua
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
--- The FS API allows you to manipulate files and the filesystem.
|
||||||
|
--
|
||||||
|
-- @module fs
|
||||||
|
|
||||||
|
function list(path) end
|
||||||
|
function combine(base, child) end
|
||||||
|
function getName(path) end
|
||||||
|
function getSize(path) end
|
||||||
|
function exists(path) end
|
||||||
|
function isDir(path) end
|
||||||
|
function isReadOnly(path) end
|
||||||
|
function makeDir(path) end
|
||||||
|
function move(from, to) end
|
||||||
|
function copy(from, to) end
|
||||||
|
function delete(path) end
|
||||||
|
function open(path, mode) end
|
||||||
|
function getDrive(path) end
|
||||||
|
function getFreeSpace(path) end
|
||||||
|
function find(pattern) end
|
||||||
|
function getDir(path) end
|
||||||
|
|
||||||
|
--- A file handle which can be read from.
|
||||||
|
--
|
||||||
|
-- @type ReadHandle
|
||||||
|
-- @see fs.open
|
||||||
|
local ReadHandle = {}
|
||||||
|
function ReadHandle.read(count) end
|
||||||
|
function ReadHandle.readAll() end
|
||||||
|
function ReadHandle.readLine(with_trailing) end
|
||||||
|
function ReadHandle.seek(whence, offset) end
|
||||||
|
function ReadHandle.close() end
|
||||||
|
|
||||||
|
--- A file handle which can be written to.
|
||||||
|
--
|
||||||
|
-- @type WriteHandle
|
||||||
|
-- @see fs.open
|
||||||
|
local WriteHandle = {}
|
||||||
|
function WriteHandle.write(text) end
|
||||||
|
function WriteHandle.writeLine(text) end
|
||||||
|
function WriteHandle.flush(text) end
|
||||||
|
function WriteHandle.seek(whence, offset) end
|
||||||
|
function WriteHandle.close() end
|
229
doc/stub/http.lua
Normal file
229
doc/stub/http.lua
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
--- The http library allows communicating with web servers, sending and
|
||||||
|
-- receiving data from them.
|
||||||
|
--
|
||||||
|
-- #### `http_check` event
|
||||||
|
--
|
||||||
|
-- @module http
|
||||||
|
|
||||||
|
--- Asynchronously make a HTTP request to the given url.
|
||||||
|
--
|
||||||
|
-- This returns immediately, a [`http_success`](#http-success-event) or
|
||||||
|
-- [`http_failure`](#http-failure-event) will be queued once the request has
|
||||||
|
-- completed.
|
||||||
|
--
|
||||||
|
-- @tparam string url The url to request
|
||||||
|
-- @tparam[opt] string body An optional string containing the body of the
|
||||||
|
-- request. If specified, a `POST` request will be made instead.
|
||||||
|
-- @tparam[opt] { [string] = string } headers Additional headers to send as part
|
||||||
|
-- of this request.
|
||||||
|
-- @tparam[opt] boolean binary Whether to make a binary HTTP request. If true,
|
||||||
|
-- the body will not be UTF-8 encoded, and the received response will not be
|
||||||
|
-- decoded.
|
||||||
|
--
|
||||||
|
-- @tparam[2] {
|
||||||
|
-- url = string, body? = string, headers? = { [string] = string },
|
||||||
|
-- binary? = boolean, method? = string, redirect? = boolean,
|
||||||
|
-- } request Options for the request.
|
||||||
|
--
|
||||||
|
-- This table form is an expanded version of the previous syntax. All arguments
|
||||||
|
-- from above are passed in as fields instead (for instance,
|
||||||
|
-- `http.request("https://example.com")` becomes `http.request { url =
|
||||||
|
-- "https://example.com" }`).
|
||||||
|
--
|
||||||
|
-- This table also accepts several additional options:
|
||||||
|
--
|
||||||
|
-- - `method`: Which HTTP method to use, for instance `"PATCH"` or `"DELETE"`.
|
||||||
|
-- - `redirect`: Whether to follow HTTP redirects. Defaults to true.
|
||||||
|
--
|
||||||
|
-- @see http.get For a synchronous way to make GET requests.
|
||||||
|
-- @see http.post For a synchronous way to make POST requests.
|
||||||
|
function request(...) end
|
||||||
|
|
||||||
|
--- Make a HTTP GET request to the given url.
|
||||||
|
--
|
||||||
|
-- @tparam string url The url to request
|
||||||
|
-- @tparam[opt] { [string] = string } headers Additional headers to send as part
|
||||||
|
-- of this request.
|
||||||
|
-- @tparam[opt] boolean binary Whether to make a binary HTTP request. If true,
|
||||||
|
-- the body will not be UTF-8 encoded, and the received response will not be
|
||||||
|
-- decoded.
|
||||||
|
--
|
||||||
|
-- @tparam[2] {
|
||||||
|
-- url = string, headers? = { [string] = string },
|
||||||
|
-- binary? = boolean, method? = string, redirect? = boolean,
|
||||||
|
-- } request Options for the request. See @{http.request} for details on how
|
||||||
|
-- these options behave.
|
||||||
|
--
|
||||||
|
-- @treturn Response The resulting http response, which can be read from.
|
||||||
|
-- @treturn[2] nil When the http request failed, such as in the event of a 404
|
||||||
|
-- error or connection timeout.
|
||||||
|
-- @treturn string A message detailing why the request failed.
|
||||||
|
-- @treturn Response|nil The failing http response, if available.
|
||||||
|
--
|
||||||
|
-- @usage Make a request to [example.computercraft.cc](https://example.computercraft.cc),
|
||||||
|
-- and print the returned page.
|
||||||
|
-- ```lua
|
||||||
|
-- local request = http.get("https://example.computercraft.cc")
|
||||||
|
-- print(request.readAll())
|
||||||
|
-- -- => HTTP is working!
|
||||||
|
-- request.close()
|
||||||
|
-- ```
|
||||||
|
function get(...) end
|
||||||
|
|
||||||
|
--- Make a HTTP POST request to the given url.
|
||||||
|
--
|
||||||
|
-- @tparam string url The url to request
|
||||||
|
-- @tparam string body The body of the POST request.
|
||||||
|
-- @tparam[opt] { [string] = string } headers Additional headers to send as part
|
||||||
|
-- of this request.
|
||||||
|
-- @tparam[opt] boolean binary Whether to make a binary HTTP request. If true,
|
||||||
|
-- the body will not be UTF-8 encoded, and the received response will not be
|
||||||
|
-- decoded.
|
||||||
|
--
|
||||||
|
-- @tparam[2] {
|
||||||
|
-- url = string, body? = string, headers? = { [string] = string },
|
||||||
|
-- binary? = boolean, method? = string, redirect? = boolean,
|
||||||
|
-- } request Options for the request. See @{http.request} for details on how
|
||||||
|
-- these options behave.
|
||||||
|
--
|
||||||
|
-- @treturn Response The resulting http response, which can be read from.
|
||||||
|
-- @treturn[2] nil When the http request failed, such as in the event of a 404
|
||||||
|
-- error or connection timeout.
|
||||||
|
-- @treturn string A message detailing why the request failed.
|
||||||
|
-- @treturn Response|nil The failing http response, if available.
|
||||||
|
function post(...) end
|
||||||
|
|
||||||
|
--- A http response. This acts very much like a @{fs.ReadHandle|file}, though
|
||||||
|
-- provides some http specific methods.
|
||||||
|
--
|
||||||
|
-- #### `http_success` event
|
||||||
|
-- #### `http_failure` event
|
||||||
|
--
|
||||||
|
-- @type Response
|
||||||
|
-- @see http.request On how to make a http request.
|
||||||
|
local Response = {}
|
||||||
|
|
||||||
|
--- Returns the response code and response message returned by the server
|
||||||
|
--
|
||||||
|
-- @treturn number The response code (i.e. 200)
|
||||||
|
-- @treturn string The response message (i.e. "OK")
|
||||||
|
function Response.getResponseCode() end
|
||||||
|
|
||||||
|
--- Get a table containing the response's headers, in a format similar to that
|
||||||
|
-- required by @{http.request}. If multiple headers are sent with the same
|
||||||
|
-- name, they will be combined with a comma.
|
||||||
|
--
|
||||||
|
-- @treturn { [string]=string } The response's headers.
|
||||||
|
-- Make a request to [example.computercraft.cc](https://example.computercraft.cc),
|
||||||
|
-- and print the returned headers.
|
||||||
|
-- ```lua
|
||||||
|
-- local request = http.get("https://example.computercraft.cc")
|
||||||
|
-- print(textutils.serialize(request.getResponseHeaders()))
|
||||||
|
-- -- => {
|
||||||
|
-- -- [ "Content-Type" ] = "text/plain; charset=utf8",
|
||||||
|
-- -- [ "content-length" ] = 17,
|
||||||
|
-- -- ...
|
||||||
|
-- -- }
|
||||||
|
-- request.close()
|
||||||
|
-- ```
|
||||||
|
function Response.getResponseHeaders() end
|
||||||
|
|
||||||
|
function Response.read(count) end
|
||||||
|
function Response.readAll() end
|
||||||
|
function Response.readLine(with_trailing) end
|
||||||
|
function Response.seek(whence, offset) end
|
||||||
|
function Response.close() end
|
||||||
|
|
||||||
|
--- Asynchronously determine whether a URL can be requested.
|
||||||
|
--
|
||||||
|
-- If this returns `true`, one should also listen for [`http_check`
|
||||||
|
-- events](#http-check-event) which will container further information about
|
||||||
|
-- whether the URL is allowed or not.
|
||||||
|
--
|
||||||
|
-- @tparam string url The URL to check.
|
||||||
|
-- @treturn true When this url is not invalid. This does not imply that it is
|
||||||
|
-- allowed - see the comment above.
|
||||||
|
-- @treturn[2] false When this url is invalid.
|
||||||
|
-- @treturn string A reason why this URL is not valid (for instance, if it is
|
||||||
|
-- malformed, or blocked).
|
||||||
|
--
|
||||||
|
-- @see http.checkURL For a synchronous version.
|
||||||
|
function checkURLAsync(url) end
|
||||||
|
|
||||||
|
--- Determine whether a URL can be requested.
|
||||||
|
--
|
||||||
|
-- If this returns `true`, one should also listen for [`http_check`
|
||||||
|
-- events](#http-check-event) which will container further information about
|
||||||
|
-- whether the URL is allowed or not.
|
||||||
|
--
|
||||||
|
-- @tparam string url The URL to check.
|
||||||
|
-- @treturn true When this url is valid and can be requested via @{http.request}.
|
||||||
|
-- @treturn[2] false When this url is invalid.
|
||||||
|
-- @treturn string A reason why this URL is not valid (for instance, if it is
|
||||||
|
-- malformed, or blocked).
|
||||||
|
--
|
||||||
|
-- @see http.checkURLAsync For an asynchronous version.
|
||||||
|
--
|
||||||
|
-- @usage
|
||||||
|
-- ```lua
|
||||||
|
-- print(http.checkURL("https://example.computercraft.cc/"))
|
||||||
|
-- -- => true
|
||||||
|
-- print(http.checkURL("http://localhost/"))
|
||||||
|
-- -- => false Domain not permitted
|
||||||
|
-- print(http.checkURL("not a url"))
|
||||||
|
-- -- => false URL malformed
|
||||||
|
-- ```
|
||||||
|
function checkURL(url) end
|
||||||
|
|
||||||
|
--- Open a websocket.
|
||||||
|
--
|
||||||
|
-- @tparam string url The websocket url to connect to. This should have the
|
||||||
|
-- `ws://` or `wss://` protocol.
|
||||||
|
-- @tparam[opt] { [string] = string } headers Additional headers to send as part
|
||||||
|
-- of the initial websocket connection.
|
||||||
|
--
|
||||||
|
-- @treturn Websocket The websocket connection.
|
||||||
|
-- @treturn[2] false If the websocket connection failed.
|
||||||
|
-- @treturn string An error message describing why the connection failed.
|
||||||
|
function websocket(url, headers) end
|
||||||
|
|
||||||
|
--- Asynchronously open a websocket.
|
||||||
|
--
|
||||||
|
-- This returns immediately, a [`websocket_success`](#websocket-success-event)
|
||||||
|
-- or [`websocket_failure`](#websocket-failure-event) will be queued once the
|
||||||
|
-- request has completed.
|
||||||
|
--
|
||||||
|
-- @tparam string url The websocket url to connect to. This should have the
|
||||||
|
-- `ws://` or `wss://` protocol.
|
||||||
|
-- @tparam[opt] { [string] = string } headers Additional headers to send as part
|
||||||
|
-- of the initial websocket connection.
|
||||||
|
function websocketAsync(url, headers) end
|
||||||
|
|
||||||
|
--- A websocket, which can be used to send an receive messages with a web
|
||||||
|
-- server.
|
||||||
|
--
|
||||||
|
-- @type Websocket
|
||||||
|
-- @see http.websocket On how to open a websocket.
|
||||||
|
local Websocket = {}
|
||||||
|
|
||||||
|
--- Send a websocket message to the connected server.
|
||||||
|
--
|
||||||
|
-- @tparam string message The message to send.
|
||||||
|
-- @tparam[opt] boolean binary Whether this message should be treated as a
|
||||||
|
-- binary string, rather than encoded text.
|
||||||
|
-- @throws If the websocket has been closed.
|
||||||
|
function Websocket.send(message, binary) end
|
||||||
|
|
||||||
|
--- Wait for a message from the server.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number timeout The number of seconds to wait if no message is
|
||||||
|
-- received.
|
||||||
|
-- @treturn[1] string The received message.
|
||||||
|
-- @treturn boolean If this was a binary message.
|
||||||
|
-- @treturn[2] nil If the websocket was closed while waiting, or if we timed out.
|
||||||
|
-- @throws If the websocket has been closed.
|
||||||
|
function Websocket.receive(timeout) end
|
||||||
|
|
||||||
|
--- Close this websocket. This will terminate the connection, meaning messages
|
||||||
|
-- can no longer be sent or received along it.
|
||||||
|
function Websocket.close() end
|
17
doc/stub/os.lua
Normal file
17
doc/stub/os.lua
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
function queueEvent(event, ...) end
|
||||||
|
function startTimer(delay) end
|
||||||
|
function setAlarm(time) end
|
||||||
|
function shutdown() end
|
||||||
|
function reboot() end
|
||||||
|
function getComputerID() end
|
||||||
|
computerID = getComputerID
|
||||||
|
function setComputerLabel(label) end
|
||||||
|
function getComputerLabel() end
|
||||||
|
computerLabel = getComputerLabel
|
||||||
|
function clock() end
|
||||||
|
function time(timezone) end
|
||||||
|
function day(timezone) end
|
||||||
|
function cancelTimer(id) end
|
||||||
|
function cancelAlarm(id) end
|
||||||
|
function epoch(timezone) end
|
||||||
|
function date(format, time) end
|
14
doc/stub/redstone.lua
Normal file
14
doc/stub/redstone.lua
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
function getSides() end
|
||||||
|
function setOutput(side, on) end
|
||||||
|
function getOutput(side) end
|
||||||
|
function getInput(side) end
|
||||||
|
function setBundledOutput(side, output) end
|
||||||
|
function getBundledOutput(side) end
|
||||||
|
function getBundledInput(side) end
|
||||||
|
function testBundledInput(side, mask) end
|
||||||
|
function setAnalogOutput(side, value) end
|
||||||
|
setAnalogueOutput = setAnalogOutput
|
||||||
|
function getAnalogOutput(sid) end
|
||||||
|
getAnalogueOutput = getAnalogOutput
|
||||||
|
function getAnalogInput(side) end
|
||||||
|
getAnalogueInput = getAnaloguInput
|
52
doc/stub/term.lua
Normal file
52
doc/stub/term.lua
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
function write(text) end
|
||||||
|
function scroll(lines) end
|
||||||
|
function setCursorPos(x, y) end
|
||||||
|
function setCursorBlink(blink) end
|
||||||
|
function getCursorPos() end
|
||||||
|
function getSize() end
|
||||||
|
function clear() end
|
||||||
|
function clearLine() end
|
||||||
|
function setTextColour(colour) end
|
||||||
|
setTextColor = setTextColour
|
||||||
|
function setBackgroundColour(colour) end
|
||||||
|
setBackgroundColor = setBackgroundColour
|
||||||
|
function isColour() end
|
||||||
|
isColor = isColour
|
||||||
|
function getTextColour() end
|
||||||
|
getTextColor = getTextColor
|
||||||
|
function getBackgroundColour() end
|
||||||
|
getBackgroundColour = getBackgroundColour
|
||||||
|
function blit(text, text_colours, background_colours) end
|
||||||
|
function setPaletteColour(colour, ...) end
|
||||||
|
setPaletteColour = setPaletteColour
|
||||||
|
function getPaletteColour(colour, ...) end
|
||||||
|
getPaletteColour = getPaletteColour
|
||||||
|
function nativePaletteColour(colour) end
|
||||||
|
nativePaletteColour = nativePaletteColour
|
||||||
|
|
||||||
|
--- @type Redirect
|
||||||
|
local Redirect = {}
|
||||||
|
|
||||||
|
Redirect.write = write
|
||||||
|
Redirect.scroll = scroll
|
||||||
|
Redirect.setCursorPos = setCursorPos
|
||||||
|
Redirect.setCursorBlink = setCursorBlink
|
||||||
|
Redirect.getCursorPos = getCursorPos
|
||||||
|
Redirect.getSize = getSize
|
||||||
|
Redirect.clear = clear
|
||||||
|
Redirect.clearLine = clearLine
|
||||||
|
Redirect.setTextColour = setTextColour
|
||||||
|
Redirect.setTextColor = setTextColor
|
||||||
|
Redirect.setBackgroundColour = setBackgroundColour
|
||||||
|
Redirect.setBackgroundColor = setBackgroundColor
|
||||||
|
Redirect.isColour = isColour
|
||||||
|
Redirect.isColor = isColor
|
||||||
|
Redirect.getTextColour = getTextColour
|
||||||
|
Redirect.getTextColor = getTextColor
|
||||||
|
Redirect.getBackgroundColour = getBackgroundColour
|
||||||
|
Redirect.getBackgroundColor = getBackgroundColor
|
||||||
|
Redirect.blit = blit
|
||||||
|
Redirect.setPaletteColour = setPaletteColour
|
||||||
|
Redirect.setPaletteColor = setPaletteColor
|
||||||
|
Redirect.getPaletteColour = getPaletteColour
|
||||||
|
Redirect.getPaletteColor = getPaletteColor
|
230
doc/stub/turtle.lua
Normal file
230
doc/stub/turtle.lua
Normal file
@ -0,0 +1,230 @@
|
|||||||
|
--- Move the turtle forward one block.
|
||||||
|
-- @treturn boolean Whether the turtle could successfully move.
|
||||||
|
-- @treturn string|nil The reason the turtle could not move.
|
||||||
|
function forward() end
|
||||||
|
|
||||||
|
--- Move the turtle backwards one block.
|
||||||
|
-- @treturn boolean Whether the turtle could successfully move.
|
||||||
|
-- @treturn string|nil The reason the turtle could not move.
|
||||||
|
function back() end
|
||||||
|
|
||||||
|
--- Move the turtle up one block.
|
||||||
|
-- @treturn boolean Whether the turtle could successfully move.
|
||||||
|
-- @treturn string|nil The reason the turtle could not move.
|
||||||
|
function up() end
|
||||||
|
|
||||||
|
--- Move the turtle down one block.
|
||||||
|
-- @treturn boolean Whether the turtle could successfully move.
|
||||||
|
-- @treturn string|nil The reason the turtle could not move.
|
||||||
|
function down() end
|
||||||
|
|
||||||
|
--- Rotate the turtle 90 degress to the left.
|
||||||
|
function turnLeft() end
|
||||||
|
|
||||||
|
--- Rotate the turtle 90 degress to the right.
|
||||||
|
function turnRight() end
|
||||||
|
|
||||||
|
--- Attempt to break the block in front of the turtle.
|
||||||
|
--
|
||||||
|
-- This requires a turtle tool capable of breaking the block. Diamond pickaxes
|
||||||
|
-- (mining turtles) can break any vanilla block, but other tools (such as axes)
|
||||||
|
-- are more limited.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether a block was broken.
|
||||||
|
-- @treturn string|nil The reason no block was broken.
|
||||||
|
function dig(side) end
|
||||||
|
|
||||||
|
--- Attempt to break the block above the turtle. See @{dig} for full details.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether a block was broken.
|
||||||
|
-- @treturn string|nil The reason no block was broken.
|
||||||
|
function digUp(side) end
|
||||||
|
|
||||||
|
--- Attempt to break the block below the turtle. See @{dig} for full details.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether a block was broken.
|
||||||
|
-- @treturn string|nil The reason no block was broken.
|
||||||
|
function digDown(side) end
|
||||||
|
|
||||||
|
--- Attack the entity in front of the turtle.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether an entity was attacked.
|
||||||
|
-- @treturn string|nil The reason nothing was attacked.
|
||||||
|
function attack(side) end
|
||||||
|
|
||||||
|
--- Attack the entity above the turtle.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether an entity was attacked.
|
||||||
|
-- @treturn string|nil The reason nothing was attacked.
|
||||||
|
function attackUp(side) end
|
||||||
|
|
||||||
|
--- Attack the entity below the turtle.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] "left"|"right" side The specific tool to use.
|
||||||
|
-- @treturn boolean Whether an entity was attacked.
|
||||||
|
-- @treturn string|nil The reason nothing was attacked.
|
||||||
|
function attackDown(side) end
|
||||||
|
|
||||||
|
--- Place a block or item into the world in front of the turtle.
|
||||||
|
--
|
||||||
|
-- @treturn boolean Whether the block could be placed.
|
||||||
|
-- @treturn string|nil The reason the block was not placed.
|
||||||
|
function place() end
|
||||||
|
|
||||||
|
--- Place a block or item into the world above the turtle.
|
||||||
|
--
|
||||||
|
-- @treturn boolean Whether the block could be placed.
|
||||||
|
-- @treturn string|nil The reason the block was not placed.
|
||||||
|
function placeUp() end
|
||||||
|
|
||||||
|
--- Place a block or item into the world below the turtle.
|
||||||
|
--
|
||||||
|
-- @treturn boolean Whether the block could be placed.
|
||||||
|
-- @treturn string|nil The reason the block was not placed.
|
||||||
|
function placeDown() end
|
||||||
|
|
||||||
|
--- Drop the currently selected stack into the inventory in front of the turtle,
|
||||||
|
-- or as an item into the world if there is no inventory.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to drop. If not given, the
|
||||||
|
-- entire stack will be dropped.
|
||||||
|
-- @treturn boolean Whether items were dropped.
|
||||||
|
-- @treturn string|nil The reason the no items were dropped.
|
||||||
|
-- @see select
|
||||||
|
function drop(count) end
|
||||||
|
|
||||||
|
--- Drop the currently selected stack into the inventory above the turtle, or as
|
||||||
|
-- an item into the world if there is no inventory.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to drop. If not given, the
|
||||||
|
-- entire stack will be dropped.
|
||||||
|
-- @treturn boolean Whether items were dropped.
|
||||||
|
-- @treturn string|nil The reason the no items were dropped.
|
||||||
|
-- @see select
|
||||||
|
function dropUp(count) end
|
||||||
|
|
||||||
|
--- Drop the currently selected stack into the inventory below the turtle, or as
|
||||||
|
-- an item into the world if there is no inventory.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to drop. If not given, the
|
||||||
|
-- entire stack will be dropped.
|
||||||
|
-- @treturn boolean Whether items were dropped.
|
||||||
|
-- @treturn string|nil The reason the no items were dropped.
|
||||||
|
-- @see select
|
||||||
|
function dropDown(count) end
|
||||||
|
|
||||||
|
--- Suck an item from the inventory in front of the turtle, or from an item
|
||||||
|
-- floating in the world.
|
||||||
|
--
|
||||||
|
-- This will pull items into the first acceptable slot, starting at the
|
||||||
|
-- @{select|currently selected} one.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to suck. If not given, up to a
|
||||||
|
-- stack of items will be picked up.
|
||||||
|
-- @treturn boolean Whether items were picked up.
|
||||||
|
-- @treturn string|nil The reason the no items were picked up.
|
||||||
|
function suck(count) end
|
||||||
|
|
||||||
|
--- Suck an item from the inventory above the turtle, or from an item floating
|
||||||
|
-- in the world.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to suck. If not given, up to a
|
||||||
|
-- stack of items will be picked up.
|
||||||
|
-- @treturn boolean Whether items were picked up.
|
||||||
|
-- @treturn string|nil The reason the no items were picked up.
|
||||||
|
function suckUp(count) end
|
||||||
|
|
||||||
|
--- Suck an item from the inventory below the turtle, or from an item floating
|
||||||
|
-- in the world.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number count The number of items to suck. If not given, up to a
|
||||||
|
-- stack of items will be picked up.
|
||||||
|
-- @treturn boolean Whether items were picked up.
|
||||||
|
-- @treturn string|nil The reason the no items were picked up.
|
||||||
|
function suckDown(count) end
|
||||||
|
|
||||||
|
--- Check if there is a solid block in front of the turtle. In this case, solid
|
||||||
|
-- refers to any non-air or liquid block.
|
||||||
|
--
|
||||||
|
-- @treturn boolean If there is a solid block in front.
|
||||||
|
function detect() end
|
||||||
|
|
||||||
|
--- Check if there is a solid block above the turtle.
|
||||||
|
--
|
||||||
|
-- @treturn boolean If there is a solid block above.
|
||||||
|
function detectUp() end
|
||||||
|
|
||||||
|
--- Check if there is a solid block below the turtle.
|
||||||
|
--
|
||||||
|
-- @treturn boolean If there is a solid block below.
|
||||||
|
function detectDown() end
|
||||||
|
|
||||||
|
function compare() end
|
||||||
|
function compareUp() end
|
||||||
|
function compareDown() end
|
||||||
|
|
||||||
|
function inspect() end
|
||||||
|
function inspectUp() end
|
||||||
|
function inspectDown() end
|
||||||
|
|
||||||
|
|
||||||
|
--- Change the currently selected slot.
|
||||||
|
--
|
||||||
|
-- The selected slot is determines what slot actions like @{drop} or
|
||||||
|
-- @{getItemCount} act on.
|
||||||
|
--
|
||||||
|
-- @tparam number slot The slot to select.
|
||||||
|
-- @see getSelectedSlot
|
||||||
|
function select(slot) end
|
||||||
|
|
||||||
|
--- Get the currently selected slot.
|
||||||
|
--
|
||||||
|
-- @treturn number The current slot.
|
||||||
|
-- @see select
|
||||||
|
function getSelectedSlot() end
|
||||||
|
|
||||||
|
--- Get the number of items in the given slot.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number slot The slot we wish to check. Defaults to the @{turtle.select|selected slot}.
|
||||||
|
-- @treturn number The number of items in this slot.
|
||||||
|
function getItemCount(slot) end
|
||||||
|
|
||||||
|
--- Get the remaining number of items which may be stored in this stack.
|
||||||
|
--
|
||||||
|
-- For instance, if a slot contains 13 blocks of dirt, it has room for another 51.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number slot The slot we wish to check. Defaults to the @{turtle.select|selected slot}.
|
||||||
|
-- @treturn number The space left in this slot.
|
||||||
|
function getItemSpace(slot) end
|
||||||
|
|
||||||
|
|
||||||
|
--- Get detailed information about the items in the given slot.
|
||||||
|
--
|
||||||
|
-- @tparam[opt] number slot The slot to get information about. Defaults to the @{turtle.select|selected slot}.
|
||||||
|
-- @treturn nil|table Information about the given slot, or @{nil} if it is empty.
|
||||||
|
-- @usage Print the current slot, assuming it contains 13 dirt.
|
||||||
|
--
|
||||||
|
-- print(textutils.serialize(turtle.getItemDetail()))
|
||||||
|
-- -- => {
|
||||||
|
-- -- name = "minecraft:dirt",
|
||||||
|
-- -- damage = 0,
|
||||||
|
-- -- count = 13,
|
||||||
|
-- -- }
|
||||||
|
function getItemDetail(slot) end
|
||||||
|
|
||||||
|
function getFuelLevel() end
|
||||||
|
|
||||||
|
function refuel(count) end
|
||||||
|
function compareTo(slot) end
|
||||||
|
function transferTo(slot, count) end
|
||||||
|
|
||||||
|
function getFuelLimit() end
|
||||||
|
function equipLeft() end
|
||||||
|
function equipRight() end
|
||||||
|
|
||||||
|
function craft(limit) end
|
186
doc/styles.css
Normal file
186
doc/styles.css
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
/* Basic reset on elements */
|
||||||
|
h1, h2, h3, h4, p, table, div, body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
font-size: 100%;
|
||||||
|
font: inherit;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
/* Make the page a little more airy */
|
||||||
|
body {
|
||||||
|
margin: 20px auto;
|
||||||
|
max-width: 1200px;
|
||||||
|
padding: 0 10px;
|
||||||
|
line-height: 1.6;
|
||||||
|
color: #222;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Try to use system default fonts. */
|
||||||
|
body {
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans",
|
||||||
|
"Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||||
|
}
|
||||||
|
|
||||||
|
code, pre, .parameter, .type, .definition-name, .reference {
|
||||||
|
font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Some definitions of basic tags */
|
||||||
|
code {
|
||||||
|
color: #c7254e;
|
||||||
|
background-color: #f9f2f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 0.9em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 1.5em;
|
||||||
|
font-weight: lighter;
|
||||||
|
border-bottom: solid 1px #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2, h3, h4 { margin: 1.4em 0 0.3em;}
|
||||||
|
h2 { font-size: 1.25em; }
|
||||||
|
h3 { font-size: 1.15em; font-weight: bold; }
|
||||||
|
h4 { font-size: 1.06em; }
|
||||||
|
|
||||||
|
a, a:visited, a:active { font-weight: bold; color: #004080; text-decoration: none; }
|
||||||
|
a:hover { text-decoration: underline; }
|
||||||
|
|
||||||
|
blockquote { margin-left: 3em; }
|
||||||
|
|
||||||
|
/* Stop sublists from having initial vertical space */
|
||||||
|
ul ul { margin-top: 0px; }
|
||||||
|
ol ul { margin-top: 0px; }
|
||||||
|
ol ol { margin-top: 0px; }
|
||||||
|
ul ol { margin-top: 0px; }
|
||||||
|
|
||||||
|
/* Make the target distinct; helps when we're navigating to a function */
|
||||||
|
a:target + * { background-color: #FFFF99; }
|
||||||
|
|
||||||
|
/* Allow linking to any subsection */
|
||||||
|
a[name]::before { content: "#"; }
|
||||||
|
|
||||||
|
/* Layout */
|
||||||
|
#main {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
justify-content: space-between;
|
||||||
|
min-height: calc(100vh - 100px);
|
||||||
|
}
|
||||||
|
|
||||||
|
#main > nav {
|
||||||
|
flex-basis: 30%;
|
||||||
|
min-width: 150px;
|
||||||
|
max-width: 250px;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav h1, nav ul { padding: 0em 10px; }
|
||||||
|
|
||||||
|
nav h2 {
|
||||||
|
background-color:#e7e7e7;
|
||||||
|
font-size: 1.1em;
|
||||||
|
color:#000000;
|
||||||
|
padding: 5px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul {
|
||||||
|
list-style-type: none;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content {
|
||||||
|
flex-shrink: 1;
|
||||||
|
flex-basis: 80%;
|
||||||
|
padding: 0px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
text-align: right;
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The definition lists at the top of each page */
|
||||||
|
table.definition-list {
|
||||||
|
border-collapse: collapse;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.definition-list td, table.definition-list th {
|
||||||
|
border: 1px solid #cccccc;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.definition-list th {
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
min-width: 200px;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.definition-list td { width: 100%; }
|
||||||
|
|
||||||
|
dl.definition dt {
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
padding-top: 1em;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl.definition dt .definition-name {
|
||||||
|
padding: 0 0.1em;
|
||||||
|
margin: 0 0.1em;
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
dl.definition dd {
|
||||||
|
padding-bottom: 1em;
|
||||||
|
margin: 10px 0 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl.definition h3 {
|
||||||
|
font-size: .95em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Links to source-code */
|
||||||
|
.source-link { font-size: 0.8em; }
|
||||||
|
.source-link::before { content: '[' }
|
||||||
|
.source-link::after { content: ']' }
|
||||||
|
a.source-link, a.source-link:visited, a.source-link:active { color: #505050; }
|
||||||
|
|
||||||
|
/* Method definitions */
|
||||||
|
span.parameter:after { content:":"; padding-left: 0.3em; }
|
||||||
|
.optional { text-decoration: underline dotted; }
|
||||||
|
|
||||||
|
/** Fancy colour display. */
|
||||||
|
.colour-ref {
|
||||||
|
display: inline-block;
|
||||||
|
width: 0.8em;
|
||||||
|
height: 0.8em;
|
||||||
|
margin: 0.1em 0.1em 0.3em 0.1em; /* Terrrible hack to force vertical alignment. */
|
||||||
|
border: solid 1px black;
|
||||||
|
box-sizing: border-box;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* styles for prettification of source */
|
||||||
|
.highlight .comment { color: #558817; }
|
||||||
|
.highlight .constant { color: #a8660d; }
|
||||||
|
.highlight .escape { color: #844631; }
|
||||||
|
.highlight .keyword { color: #aa5050; font-weight: bold; }
|
||||||
|
.highlight .library { color: #0e7c6b; }
|
||||||
|
.highlight .marker { color: #512b1e; background: #fedc56; font-weight: bold; }
|
||||||
|
.highlight .string { color: #8080ff; }
|
||||||
|
.highlight .literal-kw { color: #8080ff; }
|
||||||
|
.highlight .number { color: #f8660d; }
|
||||||
|
.highlight .operator { color: #2239a8; font-weight: bold; }
|
||||||
|
.highlight .preprocessor, pre .prepro { color: #a33243; }
|
||||||
|
.highlight .global { color: #800080; }
|
||||||
|
.highlight .user-keyword { color: #800080; }
|
||||||
|
.highlight .prompt { color: #558817; }
|
||||||
|
.highlight .url { color: #272fc2; text-decoration: underline; }
|
@ -1,28 +1,77 @@
|
|||||||
; -*- mode: Lisp;-*-
|
; -*- mode: Lisp;-*-
|
||||||
|
|
||||||
(sources
|
(sources
|
||||||
/src/main/resources/assets/computercraft/lua/bios.lua
|
/doc/stub/
|
||||||
/src/main/resources/assets/computercraft/lua/rom/
|
/src/main/resources/data/computercraft/lua/bios.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/
|
||||||
/src/test/resources/test-rom)
|
/src/test/resources/test-rom)
|
||||||
|
|
||||||
|
(doc
|
||||||
|
(title "CC: Tweaked")
|
||||||
|
(index doc/index.md)
|
||||||
|
(source-link https://github.com/SquidDev-CC/CC-Tweaked/blob/${commit}/${path}#L${line})
|
||||||
|
|
||||||
|
(library-path
|
||||||
|
/doc/stub/
|
||||||
|
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/command
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/turtle
|
||||||
|
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/modules/main
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/modules/command
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/modules/turtle))
|
||||||
|
|
||||||
(at /
|
(at /
|
||||||
(linters
|
(linters
|
||||||
|
syntax:string-index
|
||||||
|
|
||||||
;; It'd be nice to avoid this, but right now there's a lot of instances of
|
;; It'd be nice to avoid this, but right now there's a lot of instances of
|
||||||
;; it.
|
;; it.
|
||||||
-var:set-loop
|
-var:set-loop
|
||||||
|
|
||||||
;; It's useful to name arguments for documentation, so we allow this. It'd
|
;; It's useful to name arguments for documentation, so we allow this. It'd
|
||||||
;; be good to find a compromise in the future, but this works for now.
|
;; be good to find a compromise in the future, but this works for now.
|
||||||
-var:unused-arg))
|
-var:unused-arg
|
||||||
|
|
||||||
|
;; Suppress a couple of documentation comments warnings for now. We'll
|
||||||
|
;; hopefully be able to remove them in the future.
|
||||||
|
-doc:undocumented -doc:undocumented-arg -doc:unresolved-reference
|
||||||
|
-var:unresolved-member)
|
||||||
|
(lint
|
||||||
|
(bracket-spaces
|
||||||
|
(call no-space)
|
||||||
|
(function-args no-space)
|
||||||
|
(parens no-space)
|
||||||
|
(table space)
|
||||||
|
(index no-space))))
|
||||||
|
|
||||||
;; We disable the unused global linter in bios.lua and the APIs. In the future
|
;; We disable the unused global linter in bios.lua and the APIs. In the future
|
||||||
;; hopefully we'll get illuaminate to handle this.
|
;; hopefully we'll get illuaminate to handle this.
|
||||||
(at
|
(at
|
||||||
(/src/main/resources/assets/computercraft/lua/bios.lua
|
(/src/main/resources/data/computercraft/lua/bios.lua
|
||||||
/src/main/resources/assets/computercraft/lua/rom/apis/)
|
/src/main/resources/data/computercraft/lua/rom/apis/)
|
||||||
(linters -var:unused-global)
|
(linters -var:unused-global)
|
||||||
(lint
|
(lint (allow-toplevel-global true)))
|
||||||
(allow-toplevel-global true)))
|
|
||||||
|
|
||||||
;; These warnings are broken right now
|
;; Silence some variable warnings in documentation stubs.
|
||||||
(at (bios.lua worm.lua) (linters -control:unreachable))
|
(at /doc/stub
|
||||||
|
(linters -var:unused-global)
|
||||||
|
(lint (allow-toplevel-global true)))
|
||||||
|
|
||||||
|
;; Ensure any fully documented modules stay fully documented.
|
||||||
|
(at
|
||||||
|
(/src/main/resources/data/computercraft/lua/rom/apis/colors.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/colours.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/disk.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/gps.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/help.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/keys.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/paintutils.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/parallel.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/peripheral.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/rednet.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/settings.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/texutils.lua
|
||||||
|
/src/main/resources/data/computercraft/lua/rom/apis/vector.lua)
|
||||||
|
(linters doc:undocumented doc:undocumented-arg))
|
||||||
|
43
src/generated/resources/data/computercraft/advancements/recipes/computercraft/cable.json
generated
Normal file
43
src/generated/resources/data/computercraft/advancements/recipes/computercraft/cable.json
generated
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:cable"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_modem": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:cable"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_modem",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
35
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_advanced.json
generated
Normal file
35
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_advanced.json
generated
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:computer_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_components": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "minecraft:redstone"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:gold_ingot"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:computer_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_components",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_command.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_command.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:computer_command"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_components": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "minecraft:command_block"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:computer_command"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_components",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_normal.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/computer_normal.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:computer_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_redstone": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "forge:dusts/redstone"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:computer_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_redstone",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_1.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_1.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_1"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_10.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_10.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_10"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_10"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_11.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_11.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_11"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_11"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_12.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_12.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_12"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_13.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_13.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_13"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_14.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_14.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_14"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_14"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_15.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_15.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_15"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_15"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_16.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_16.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_16"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_16"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_2.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_2.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_2"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_2"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_3.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_3.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_3"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_4.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_4.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_4"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_5.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_5.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_5"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_5"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_6.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_6.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_6"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_7.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_7.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_7"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_8.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_8.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_8"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_8"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_9.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_9.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_9"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_drive": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_drive",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_drive.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/disk_drive.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:disk_drive"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/monitor_advanced.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/monitor_advanced.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:monitor_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:monitor_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/monitor_normal.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/monitor_normal.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:monitor_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:monitor_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/computercraft/speaker"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/computercraft/speaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/computercraft/wireless_modem_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/computercraft/wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/computercraft/wireless_modem_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/computercraft/wireless_modem_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/crafting_table"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:crafting_table"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/crafting_table"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/diamond_axe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_axe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/diamond_axe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/diamond_hoe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_hoe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/diamond_hoe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/diamond_pickaxe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_pickaxe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/diamond_pickaxe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/diamond_shovel"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_shovel"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/diamond_shovel"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_advanced/minecraft/diamond_sword"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_sword"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_advanced/minecraft/diamond_sword"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_computer_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_apple": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "minecraft:golden_apple"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_computer_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_apple",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_computer_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_apple": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "minecraft:golden_apple"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_computer_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_apple",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/computercraft/speaker"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/computercraft/speaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/computercraft/wireless_modem_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/computercraft/wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/computercraft/wireless_modem_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/computercraft/wireless_modem_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/crafting_table"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:crafting_table"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/crafting_table"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/diamond_axe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_axe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/diamond_axe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/diamond_hoe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_hoe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/diamond_hoe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/diamond_pickaxe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_pickaxe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/diamond_pickaxe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/diamond_shovel"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_shovel"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/diamond_shovel"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:pocket_normal/minecraft/diamond_sword"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:pocket_computer_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_sword"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:pocket_normal/minecraft/diamond_sword"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/printer.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/printer.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:printer"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:printer"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/speaker.json
generated
Normal file
32
src/generated/resources/data/computercraft/advancements/recipes/computercraft/speaker.json
generated
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:speaker"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/computercraft/speaker"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/computercraft/speaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/computercraft/wireless_modem_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/computercraft/wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/computercraft/wireless_modem_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/computercraft/wireless_modem_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/crafting_table"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:crafting_table"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/crafting_table"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/diamond_axe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_axe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/diamond_axe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/diamond_hoe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_hoe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/diamond_hoe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/diamond_pickaxe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_pickaxe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/diamond_pickaxe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/diamond_shovel"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_shovel"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/diamond_shovel"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_advanced/minecraft/diamond_sword"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_advanced"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_sword"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_advanced/minecraft/diamond_sword"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/computercraft/speaker"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/computercraft/speaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/computercraft/wireless_modem_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/computercraft/wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/computercraft/wireless_modem_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/computercraft/wireless_modem_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/crafting_table"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:crafting_table"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/crafting_table"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/diamond_axe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_axe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/diamond_axe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/diamond_hoe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_hoe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/diamond_hoe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/diamond_pickaxe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_pickaxe"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/diamond_pickaxe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/diamond_shovel"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_shovel"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/diamond_shovel"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:turtle_normal/minecraft/diamond_sword"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_items": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:turtle_normal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:diamond_sword"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:turtle_normal/minecraft/diamond_sword"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_items",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
43
src/generated/resources/data/computercraft/advancements/recipes/computercraft/wired_modem.json
generated
Normal file
43
src/generated/resources/data/computercraft/advancements/recipes/computercraft/wired_modem.json
generated
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:wired_modem"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_cable": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:cable"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:wired_modem"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_cable",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:wired_modem_full_from"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_modem": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:wired_modem"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:wired_modem_full_from"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_modem",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:wired_modem_full_to"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_modem": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:wired_modem"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:wired_modem_full_to"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_modem",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:wireless_modem_advanced"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_wireless": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"item": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_wireless",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:recipes/root",
|
||||||
|
"rewards": {
|
||||||
|
"recipes": [
|
||||||
|
"computercraft:wireless_modem_normal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"criteria": {
|
||||||
|
"has_computer": {
|
||||||
|
"trigger": "minecraft:inventory_changed",
|
||||||
|
"conditions": {
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"tag": "computercraft:computer"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has_the_recipe": {
|
||||||
|
"trigger": "minecraft:recipe_unlocked",
|
||||||
|
"conditions": {
|
||||||
|
"recipe": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"requirements": [
|
||||||
|
[
|
||||||
|
"has_computer",
|
||||||
|
"has_the_recipe"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
30
src/generated/resources/data/computercraft/loot_tables/computer_advanced.json
generated
Normal file
30
src/generated/resources/data/computercraft/loot_tables/computer_advanced.json
generated
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:dynamic",
|
||||||
|
"name": "computercraft:computer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:alternative",
|
||||||
|
"terms": [
|
||||||
|
{
|
||||||
|
"condition": "computercraft:block_named"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"condition": "minecraft:inverted",
|
||||||
|
"term": {
|
||||||
|
"condition": "computercraft:player_creative"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
30
src/generated/resources/data/computercraft/loot_tables/computer_normal.json
generated
Normal file
30
src/generated/resources/data/computercraft/loot_tables/computer_normal.json
generated
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:dynamic",
|
||||||
|
"name": "computercraft:computer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:alternative",
|
||||||
|
"terms": [
|
||||||
|
{
|
||||||
|
"condition": "computercraft:block_named"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"condition": "minecraft:inverted",
|
||||||
|
"term": {
|
||||||
|
"condition": "computercraft:player_creative"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/disk_drive.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/disk_drive.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:disk_drive"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/monitor_advanced.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/monitor_advanced.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:monitor_advanced"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/monitor_normal.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/monitor_normal.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:monitor_normal"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/printer.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/printer.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:printer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/speaker.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/speaker.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:speaker"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
30
src/generated/resources/data/computercraft/loot_tables/turtle_advanced.json
generated
Normal file
30
src/generated/resources/data/computercraft/loot_tables/turtle_advanced.json
generated
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:dynamic",
|
||||||
|
"name": "computercraft:computer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:alternative",
|
||||||
|
"terms": [
|
||||||
|
{
|
||||||
|
"condition": "computercraft:block_named"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"condition": "minecraft:inverted",
|
||||||
|
"term": {
|
||||||
|
"condition": "computercraft:player_creative"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
30
src/generated/resources/data/computercraft/loot_tables/turtle_normal.json
generated
Normal file
30
src/generated/resources/data/computercraft/loot_tables/turtle_normal.json
generated
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:dynamic",
|
||||||
|
"name": "computercraft:computer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:alternative",
|
||||||
|
"terms": [
|
||||||
|
{
|
||||||
|
"condition": "computercraft:block_named"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"condition": "minecraft:inverted",
|
||||||
|
"term": {
|
||||||
|
"condition": "computercraft:player_creative"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/wired_modem_full.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/wired_modem_full.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:wired_modem_full"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/wireless_modem_advanced.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/wireless_modem_advanced.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:wireless_modem_advanced"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
19
src/generated/resources/data/computercraft/loot_tables/wireless_modem_normal.json
generated
Normal file
19
src/generated/resources/data/computercraft/loot_tables/wireless_modem_normal.json
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "computercraft:wireless_modem_normal"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user