Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 107 additions & 0 deletions docs/groovy-script/mods/matteroverdrive/android.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
---
title: "Android Biotic Stats"
titleTemplate: "MatterOverdrive: Refitted | CleanroomMC"
description: "Tweak Android biotic stat parameters such as XP cost, required items, and enabled state."
source_code_link: "https://github.com/Refitbench/MatterOverdrive/blob/master/src/main/java/matteroverdrive/compat/modules/groovyscript/Android.java"
---

# Android Biotic Stats (MatterOverdrive: Refitted)

## Description

Tweak Android biotic stat parameters such as XP cost, required items, and enabled state.

:::::::::: details Info {open id="info"}
Use the `androidStat(name)` bracket handler to obtain an AbstractBioticStat.
::::::::::

:::::::::: details Tip {open id="tip"}
Use the command `/android list` to print all registered biotic stat names to chat.
::::::::::

## Identifier

The identifier `mods.matteroverdrive.android` will be used as the default on this page.

:::::::::: details All Identifiers {open id="quote"}

Any of these can be used to refer to this compat:

```groovy:no-line-numbers {1}
mods.matteroverdrive.android/* Used as page default */ // [!code focus]
mods.matteroverdrive.Android
```

::::::::::

## Modify Stat State

- Set the given biotic stat to be enabled, overriding config-based rules:

```groovy:no-line-numbers
mods.matteroverdrive.android.enable(AbstractBioticStat)
```

- Set the given biotic stat to be disabled, overriding config-based rules, disabling the stat features:

```groovy:no-line-numbers
mods.matteroverdrive.android.disable(AbstractBioticStat)
```

- Set the given biotic stat to be delisted. Cannot be installed from the Android Station, but current installs continue to function:

```groovy:no-line-numbers
mods.matteroverdrive.android.unregister(AbstractBioticStat)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.android.unregister(androidStat('cloak'))
```

::::::::::

## Modify Stat Requirements

- Set the XP cost in levels required for the given biotic stat:

```groovy:no-line-numbers
mods.matteroverdrive.android.setXp(AbstractBioticStat, int)
```

- Add an item that must be present in the player's inventory to install the given biotic stat:

```groovy:no-line-numbers
mods.matteroverdrive.android.addRequiredItem(AbstractBioticStat, ItemStack)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.android.setXp(androidStat('shield'), 25)
mods.matteroverdrive.android.addRequiredItem(androidStat('shield'), item('minecraft:iron_ingot') * 5)
```

::::::::::

## Remove Stat Requirements

- Remove all required installation items from the given biotic stat:

```groovy:no-line-numbers
mods.matteroverdrive.android.clearRequiredItems(AbstractBioticStat)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.android.clearRequiredItems(androidStat('shield'))
```

::::::::::

## Query Biotic Stats

- Returns a sorted list of all currently registered biotic stat unlocalized names:

```groovy:no-line-numbers
mods.matteroverdrive.android.getStatNames()
```
19 changes: 19 additions & 0 deletions docs/groovy-script/mods/matteroverdrive/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
aside: false
---


# MatterOverdrive: Refitted

## Categories

Has 4 subcategories.

* [Android Biotic Stats](./android.md)

* [Inscriber](./inscriber.md)

* [Matter Registry](./matter.md)

* [Replicator Blacklist](./replicator.md)

148 changes: 148 additions & 0 deletions docs/groovy-script/mods/matteroverdrive/inscriber.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
---
title: "Inscriber"
titleTemplate: "MatterOverdrive: Refitted | CleanroomMC"
description: "Add or remove recipes from the Inscriber."
source_code_link: "https://github.com/Refitbench/MatterOverdrive/blob/master/src/main/java/matteroverdrive/compat/modules/groovyscript/Inscriber.java"
---

# Inscriber (MatterOverdrive: Refitted)

## Description

Add or remove recipes from the Inscriber.

## Identifier

The identifier `mods.matteroverdrive.inscriber` will be used as the default on this page.

:::::::::: details All Identifiers {open id="quote"}

Any of these can be used to refer to this compat:

```groovy:no-line-numbers {1}
mods.matteroverdrive.inscriber/* Used as page default */ // [!code focus]
mods.matteroverdrive.Inscriber
```

::::::::::

## Adding Recipes

- Add the given recipe to the recipe list:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.add(InscriberRecipe)
```

### Recipe Builder

Just like other recipe types, the Inscriber also uses a recipe builder.

Don't know what a builder is? Check [the builder info page](../../getting_started/builder.md) out.

:::::::::: details Recipe Builder {open id="abstract"}

---

- Build and register a new Inscriber recipe with two inputs, one output, an energy cost, and a processing time.

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.recipeBuilder()
```

---

- `IngredientList<IIngredient>`. Sets the item inputs of the recipe. Requires exactly 2.

```groovy:no-line-numbers
input(IIngredient)
input(IIngredient...)
input(Collection<IIngredient>)
```

- `ItemStackList`. Sets the item outputs of the recipe. Requires exactly 1.

```groovy:no-line-numbers
output(ItemStack)
output(ItemStack...)
output(Collection<ItemStack>)
```

- `int`. Ticks required to complete the recipe. Must be greater than 0. (Default `300`).

```groovy:no-line-numbers
time(int)
```

- `int`. Energy consumed per recipe in RF. Must be greater than 0. (Default `64000`).

```groovy:no-line-numbers
energy(int)
```

---

- First validates the builder, returning `null` and outputting errors to the log file if the validation failed, then registers the builder and returns the registered object. (returns `null` or `matteroverdrive.data.recipes.InscriberRecipe`).

```groovy:no-line-numbers
register()
```

---

::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.inscriber.recipeBuilder()
.input(item('minecraft:redstone'))
.input(item('minecraft:gold_ingot'))
.output(item('matteroverdrive:circuit_basic'))
.energy(32000)
.time(120)
.register()
```

:::::::::

::::::::::

## Removing Recipes

- Removes the given recipe from the recipe list:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.remove(InscriberRecipe)
```

- Remove all Inscriber recipes whose main and secondary inputs match the given ingredients:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.removeByInputs(IIngredient, IIngredient)
```

- Remove all Inscriber recipes whose output matches the given ingredient:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.removeByOutput(IIngredient)
```

- Removes all registered recipes:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.removeAll()
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.inscriber.removeByInputs(item('matteroverdrive:isolinear_circuit'), item('minecraft:gold_ingot'))
mods.matteroverdrive.inscriber.removeAll()
```

::::::::::

## Getting the value of recipes

- Iterates through every entry in the registry, with the ability to call remove on any element to remove it:

```groovy:no-line-numbers
mods.matteroverdrive.inscriber.streamRecipes()
```
72 changes: 72 additions & 0 deletions docs/groovy-script/mods/matteroverdrive/matter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
title: "Matter Registry"
titleTemplate: "MatterOverdrive: Refitted | CleanroomMC"
description: "Modify the matter value table used by Matter Overdrive's scanner, replicator, and decomposer. Supports individual items, ore dictionary, or entire modIDs."
source_code_link: "https://github.com/Refitbench/MatterOverdrive/blob/master/src/main/java/matteroverdrive/compat/modules/groovyscript/Matter.java"
---

# Matter Registry (MatterOverdrive: Refitted)

## Description

Modify the matter value table used by Matter Overdrive's scanner, replicator, and decomposer. Supports individual items, ore dictionary, or entire modIDs.

## Identifier

The identifier `mods.matteroverdrive.matter` will be used as the default on this page.

:::::::::: details All Identifiers {open id="quote"}

Any of these can be used to refer to this compat:

```groovy:no-line-numbers {1}
mods.matteroverdrive.matter/* Used as page default */ // [!code focus]
mods.matteroverdrive.Matter
```

::::::::::

## Adding Entries

- Set the matter value for an item or ore dictionary group, replacing any existing entry:

```groovy:no-line-numbers
mods.matteroverdrive.matter.add(IIngredient, int)
```

- Set the matter value for an item or ore dictionary group, replacing any existing entry:

```groovy:no-line-numbers
mods.matteroverdrive.matter.add(IIngredient, IMatterEntryHandler)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.matter.add(item('minecraft:gold_ingot'), 256)
mods.matteroverdrive.matter.add(ore('blockGold'), 256)
```

::::::::::

## Removing Entries

- Remove the matter entry for an item or ore dictionary group:

```groovy:no-line-numbers
mods.matteroverdrive.matter.remove(IIngredient)
```

- Prevent a mod's items from being automatically assigned matter values during scanning. Use modID:

```groovy:no-line-numbers
mods.matteroverdrive.matter.blacklistMod(String)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.matter.remove(item('minecraft:apple'))
mods.matteroverdrive.matter.remove(ore('ingotCopper'))
mods.matteroverdrive.matter.blacklistMod('thaumcraft')
```

::::::::::
43 changes: 43 additions & 0 deletions docs/groovy-script/mods/matteroverdrive/replicator.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
title: "Replicator Blacklist"
titleTemplate: "MatterOverdrive: Refitted | CleanroomMC"
description: "Add items to the replicator blacklist. Blacklisted items cannot be replicated even if they have a matter value assigned."
source_code_link: "https://github.com/Refitbench/MatterOverdrive/blob/master/src/main/java/matteroverdrive/compat/modules/groovyscript/Replicator.java"
---

# Replicator Blacklist (MatterOverdrive: Refitted)

## Description

Add items to the replicator blacklist. Blacklisted items cannot be replicated even if they have a matter value assigned.

## Identifier

The identifier `mods.matteroverdrive.replicator` will be used as the default on this page.

:::::::::: details All Identifiers {open id="quote"}

Any of these can be used to refer to this compat:

```groovy:no-line-numbers {1}
mods.matteroverdrive.replicator/* Used as page default */ // [!code focus]
mods.matteroverdrive.Replicator
```

::::::::::

## Adding Entries

- Add an item, item stack, or ingredient to the replicator blacklist:

```groovy:no-line-numbers
mods.matteroverdrive.replicator.addBlacklist(IIngredient)
```

:::::::::: details Example {open id="example"}
```groovy:no-line-numbers
mods.matteroverdrive.replicator.addBlacklist(item('matteroverdrive:matter_dust'))
mods.matteroverdrive.replicator.addBlacklist(ore('blockGold'))
```

::::::::::