Compare commits

..

No commits in common. "main" and "V1.1.1" have entirely different histories.
main ... V1.1.1

80 changed files with 299 additions and 1037 deletions

View file

@ -1,47 +0,0 @@
on: [push]
env:
godot_version: 4.2.1
jobs:
Auto-Build-App:
runs-on: docker
steps:
- name: Install Packages
run: |
apt-get update
apt-get install -y --no-install-recommends zip \
ca-certificates \
git \
git-lfs \
wget \
curl \
zip \
openjdk-17-jdk
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
- name: Set gradlew perms
run: chmod +x ./gradlew
- name: List files in the repos
run: ls ${{ gitea.workspace }}
- name: Init gradle
run: ./gradlew init
- run: echo "🖥️ The workflow is now ready to build code on the runner."
- name: Build App
run: |
./gradlew build
ls ${{ gitea.workspace }}
- name: List files in the repository
run: |
ls -lh ${{ gitea.workspace }}
- name: Upload windows build
uses: actions/upload-artifact@v3
with:
name: BuildFiles
path: |
./build/libs/*.jar
!./build/libs/*-sources.jar
- run: echo "🍏 This job's status is ${{ job.status }}."

View file

@ -1,48 +0,0 @@
on:
release:
types: [published]
env:
godot_version: 4.2.1
jobs:
Auto-Build-App:
runs-on: docker
steps:
- name: Install Packages
run: |
apt-get update
apt-get install -y --no-install-recommends zip \
wget \
curl
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
- name: Download Godot
run: |
echo "Downloading Godot ${{ env.godot_version }}"
wget https://github.com/godotengine/godot/releases/download/${{ env.godot_version }}-stable/Godot_v${{ env.godot_version }}-stable_linux.x86_64.zip
unzip Godot_v${{ env.godot_version }}-stable_linux.x86_64.zip
rm Godot_v${{ env.godot_version }}-stable_linux.x86_64.zip
mv Godot_v${{ env.godot_version }}-stable_linux.x86_64 godot.x86_64
chmod +x godot.x86_64
- name: Run code
run: godot.x86_64 -s upload_new_release.gd
- run: echo "🖥️ The workflow is now ready to build code on the runner."
- name: Build App
run: |
./gradlew build
ls ${{ gitea.workspace }}
- name: List files in the repository
run: |
ls -lh ${{ gitea.workspace }}
- name: Upload windows build
uses: actions/upload-artifact@v3
with:
name: BuildFiles
path: |
./build/libs/*.jar
!./build/libs/*-sources.jar
- run: echo "🍏 This job's status is ${{ job.status }}."

View file

@ -6,7 +6,7 @@ plugins {
repositories {
ivy {
name "Cosmic Reach"
url "https://github.com/CRModders/CosmicArchive/raw/main/versions/pre-alpha"
url "https://cosmic-archive.netlify.app/"
patternLayout {
artifact "/Cosmic Reach-[revision].jar"
}
@ -20,14 +20,6 @@ repositories {
}
}
maven {
name "crmReleases"
url "https://maven.crmodders.dev/releases"
}
maven {
name "crmReleases"
url "https://maven.crmodders.dev/snapshots"
}
maven {
name "JitPack"
url "https://jitpack.io"
@ -47,12 +39,12 @@ repositories {
mavenCentral()
flatDir {
dirs "${rootDir}/mods/"
content {
includeGroup "quilt-mod"
}
}
// flatDir {
// dirs "${rootDir}/mods/"
// content {
// includeGroup "quilt-mod"
// }
// }
}
@ -70,36 +62,10 @@ dependencies {
cosmicreach "finalforeach:cosmicreach:${cosmic_reach_version}"
// Cosmic Quilt
//quiltMod "org.codeberg.CRModders:cosmic-quilt:${cosmic_quilt_version}"
implementation "org.codeberg.CRModders:cosmic-quilt:${cosmic_quilt_version}"
quiltMod "org.codeberg.CRModders:cosmic-quilt:${cosmic_quilt_version}"
//quiltMod "quilt-mod:fluxapi:0.5.8r2"
//quiltMod "dev.crmodders:fluxapi:${fluxapi_version}"//0.5.5
def dir = new File(project.projectDir, "src/main/resources/${id}");
def dir_path = dir.getPath()
def files = dir.listFiles().toList();
List<String> paths = new ArrayList<String>();
while (files.size()>0){
File file = files[0]
files.remove(0)
if (file.isDirectory())
files.addAll(file.listFiles().toList())
else
paths.add(file.getPath())
}
String assets_txt = new File(project.projectDir,"src/main/resources/${id}/assets.txt")
FileWriter writer = new FileWriter(assets_txt)
String txt = ""
for (String path in paths) {
String sb = path.replace(dir_path+"/","${id}:").replace(dir_path+"\\","${id}:");
txt += sb+"\n";
}
writer.write(txt)
writer.close()
//quiltMod "quilt-mod:resource-loader:1.0.2"
quiltMod "com.github.CRModders:FluxAPI:0.4.0"
}
processResources {
@ -146,7 +112,6 @@ applicationDefaultJvmArgs = [
getQuiltModLocations(configurations.quiltMod) // Adds the jars of any Quilt mods added
]
run {
// To run this project in the game, depend on the creation of jar task
dependsOn "jar"

View file

@ -1,15 +1,13 @@
# Gradle stuff
org.gradle.jvmargs=-Xmx4096M
org.gradle.parallel=true
org.gradle.caching=false
org.gradle.jvmargs=-Xmx4096M
org.gradle.parallel=true
org.gradle.caching=false
# Project Info
version=1.7.2
group=net.pietru
id=omni_power
version=1.1.0
group=net.pietru
id=omni_power
# Dependency Versions
cosmic_reach_version=0.3.1
cosmic_quilt_version=2.0.2
#fluxapi_version=0.6.0
cosmic_reach_version=0.1.15
cosmic_quilt_version=1.1.5

View file

@ -1,25 +1,2 @@
OmniPower Mod - License
Copyright 2024 pietru(Bartłomiej Burakowski)
Permission is hereby granted, free of charge,
to any person obtaining a copy of this software
and associated documentation files (the “Software”),
to deal in the Software with limitation of rights to:
use,
copy,
modify,
merge,
publish,
distribute,
sublicense,
under the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
OmniPower Mod © 2024 by pietru(Bartłomiej Burakowski) is licensed under Attribution-NonCommercial 4.0 International.
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/4.0/

Binary file not shown.

Binary file not shown.

View file

@ -3,20 +3,7 @@ Mod for game Cosmic Reach.\
Based on the example mod for the [Cosmic Quilt](https://codeberg.org/CRModders/cosmic-quilt) Loader
## Mod requires
- Cosmic Reach (0.1.24+)
- Cosmic Quilt (2.0.2+)
- Flux API (0.5.9+)
<br>
<br>
Mod Licensed under licensed under MIT like license. <br>
Check <code>license.txt</code> for details.
<br>
<br>
I call OmniPower license MIT Like cause I belive you can do what you want with it as long as you are not selling it.
<br>
By selling I don't mean selling other mod that might use OmniPower Power Action.
So as long as you are using OmniPower for API feel free to treat license like MIT.
- Flux API (0.4.0+)
## How to test/build

View file

@ -1,71 +1,26 @@
package net.pietru.omni_power;
import com.badlogic.gdx.Gdx;
import finalforeach.cosmicreach.GameAssetLoader;
import finalforeach.cosmicreach.blockevents.BlockEvents;
import finalforeach.cosmicreach.blocks.Block;
import dev.crmodders.flux.tags.Identifier;
import dev.crmodders.flux.util.BlockBuilderUtils;
import finalforeach.cosmicreach.world.blockevents.BlockEvents;
import net.pietru.omni_power.blockevents.Power;
import dev.crmodders.cosmicquilt.api.entrypoint.ModInitializer;
import org.coolcosmos.cosmicquilt.api.entrypoint.ModInitializer;
import org.quiltmc.loader.api.ModContainer;
import java.io.*;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Enumeration;
import java.util.List;
import java.util.regex.Pattern;
import java.util.zip.ZipEntry;
import java.util.zip.ZipException;
import java.util.zip.ZipFile;
public class OmniPower implements ModInitializer {
public static final String MOD_ID = "omni_power";
public static boolean block_entities = true;
public static final String[] blocks = {
"cable",
"lever",
"door_cube",
"cable_merger",
"cable_adapter"
"cable_merger"
};
@Override
public void onInitialize(ModContainer mod) {
//if (QuiltLoader.isModLoaded("becraft"))
System.out.println("OmniPower Mod Initialized!");
load_power_event();
List<String> paths = List.of(Gdx.files.internal(MOD_ID + "/assets.txt").readString().split("\n"));
for (String path : paths){
if (path.contains("block_events")) {
System.out.println("Loading " + path);
BlockEvents.loadBlockEventsFromAsset(GameAssetLoader.loadAsset(path)); //Gdx.files.classpath(path)
}
}
System.out.println("Registered OmniPower Events");
System.out.println("Pop Structures Mod Initialized!");
BlockEvents.registerBlockEventAction(new Power());
for (String block:blocks) {
System.out.println(block);
try {
Block.loadBlock(GameAssetLoader.loadAsset("omni_power:blocks/"+block+".json"));
} catch (Exception var3) {
throw new RuntimeException("Error parsing block: " + block, var3);
}
}
System.out.println("Registered OmniPower Blocks");
}
public static void load_power_event(){
try {
BlockEvents.registerBlockEventAction(Power.class);
} catch (Exception e){
System.out.println(e);
System.out.println("If msg above says something Duplicate block event action key it might be intended behaviour...");
BlockBuilderUtils.getBlockFromJson(new Identifier(MOD_ID, block));
}
}
}

View file

@ -1,5 +0,0 @@
package net.pietru.omni_power.api;
public interface IPowerClient {
}

View file

@ -1,8 +0,0 @@
package net.pietru.omni_power.api;
import finalforeach.cosmicreach.blockentities.BlockEntity;
public interface IPowerProducer{
void send_to_client(BlockEntity client);
}

View file

@ -1,44 +1,36 @@
package net.pietru.omni_power.blockevents;
import com.badlogic.gdx.utils.Array;
import finalforeach.cosmicreach.blockentities.BlockEntity;
import finalforeach.cosmicreach.blockevents.actions.ActionId;
import finalforeach.cosmicreach.blockevents.actions.IBlockAction;
import finalforeach.cosmicreach.blocks.BlockPosition;
import finalforeach.cosmicreach.blockevents.BlockEventTrigger;
import finalforeach.cosmicreach.blocks.BlockState;
import finalforeach.cosmicreach.world.Zone;
import com.badlogic.gdx.utils.OrderedMap;
import finalforeach.cosmicreach.world.BlockPosition;
import finalforeach.cosmicreach.world.World;
import finalforeach.cosmicreach.world.blockevents.BlockEventTrigger;
import finalforeach.cosmicreach.world.blockevents.IBlockEventAction;
import finalforeach.cosmicreach.world.blocks.BlockState;
import net.pietru.omni_power.OmniPower;
import net.pietru.omni_power.api.IPowerClient;
import net.pietru.omni_power.api.IPowerProducer;
import java.util.HashMap;
import java.util.Map;
@ActionId(id = OmniPower.MOD_ID+":power")
public class Power implements IBlockAction {
public static boolean block_entities = false;
public String triggerId;
public String cable_group;
public boolean self_run = true;
public Power(){
block_entities=OmniPower.block_entities;
public class Power implements IBlockEventAction {
@Override
public String getActionId() {
System.out.println("Registering "+ OmniPower.MOD_ID+":power");
return OmniPower.MOD_ID+":power";
}
@Override
public void act(BlockState blockState, BlockEventTrigger blockEventTrigger, Zone zone, Map<String, Object> args) {
this.act(zone, (BlockPosition)args.get("blockPos"));
public void act(BlockState blockState, BlockEventTrigger blockEventTrigger, World world, Map<String, Object> args) {
this.act(blockState, blockEventTrigger, world, (BlockPosition)args.get("blockPos"));
}
public void act(Zone zone, BlockPosition sourcePos) {
boolean source_be = false;
BlockEntity source_entity = null;
if (block_entities){
source_entity = sourcePos.chunk.getBlockEntity(sourcePos.localX,sourcePos.localY,sourcePos.localZ);
source_be = (source_entity instanceof IPowerProducer);
//System.out.println("SourceEntityID: "+ source_entity.getType().getId() +" BE: "+source_be);
public void act(BlockState srcBlockState, BlockEventTrigger blockEventTrigger, World world, BlockPosition sourcePos) {
OrderedMap<String, Object> p = blockEventTrigger.getParams();
String triggerId = (String)p.get("triggerId");
String cable_group = (String)p.get("cable_group");
Boolean self_run = true;
if (p.containsKey("self_run")) {
self_run = (Boolean)p.get("self_run");
}
Array<BlockPosition> power_transmitters = new Array<>();
Array<BlockPosition> checked_blocks = new Array<>();
@ -55,24 +47,17 @@ public class Power implements IBlockAction {
if (targetBlockState==null || targetBlockState.stringId==null){
continue;
}
if (to_check!=sourcePos || this.self_run){
runTrigger(this.triggerId,to_check,zone);
if (to_check!=sourcePos || self_run){
runTrigger(triggerId,to_check,world);
}
if (block_entities && source_be){
BlockEntity target_entity = to_check.chunk.getBlockEntity(to_check.localX,to_check.localY,to_check.localZ);
//if (target_entity!=null)
// System.out.println("TargetEntityID: "+target_entity.getType().getId()+" IsPowerClient: "+(target_entity instanceof IPowerClient));
if (target_entity instanceof IPowerClient)
((IPowerProducer)source_entity).send_to_client(target_entity);
}
if (targetBlockState.stringId.contains(this.cable_group)){
if (targetBlockState.stringId.contains(cable_group)){
power_transmitters.add(to_check);
unchecked_blocks.addAll(get_touching_positions(zone,to_check,targetBlockState));
unchecked_blocks.addAll(get_touching_positions(world,to_check,targetBlockState));
}
}
}
private void runTrigger(String triggerId, BlockPosition triggerPos, Zone zone) {
private void runTrigger(String triggerId, BlockPosition triggerPos, World world) {
if (triggerPos != null) {
BlockState targetBlockState = triggerPos.getBlockState();
if (targetBlockState == null) {
@ -84,65 +69,45 @@ public class Power implements IBlockAction {
return;
}
Map<String, Object> args = new HashMap<>();
Map<String, Object> args = new HashMap();
args.put("blockPos", triggerPos);
BlockEventTrigger[] var8 = customTrigger;
int var9 = customTrigger.length;
for (BlockEventTrigger t : customTrigger) {
t.act(targetBlockState, zone, args);
for(int var10 = 0; var10 < var9; ++var10) {
BlockEventTrigger t = var8[var10];
t.act(targetBlockState, world, args);
}
}
}
public Array<BlockPosition> get_touching_positions(Zone zone,BlockPosition pos,BlockState state){
public Array<BlockPosition> get_touching_positions(World world,BlockPosition pos,BlockState state){
Array<BlockPosition> arr = new Array<>();
BlockPosition side_pos;
side_pos = pos.getOffsetBlockPos(zone, 1, 0, 0);
if (state.stringId.contains("xp_power") && block_has_dir_or_all(side_pos,"xm_power"))
arr.add(side_pos);
side_pos = pos.getOffsetBlockPos(zone, -1, 0, 0);
if (state.stringId.contains("xm_power") && block_has_dir_or_all(side_pos,"xp_power"))
arr.add(side_pos);
if (state.stringId.contains("xp_power"))
arr.add(pos.getOffsetBlockPos(world, 1, 0, 0));
if (state.stringId.contains("xm_power"))
arr.add(pos.getOffsetBlockPos(world, -1, 0, 0));
side_pos = pos.getOffsetBlockPos(zone, 0, 1, 0);
if (state.stringId.contains("yp_power") && block_has_dir_or_all(side_pos,"ym_power"))
arr.add(side_pos);
side_pos = pos.getOffsetBlockPos(zone, 0, -1, 0);
if (state.stringId.contains("ym_power") && block_has_dir_or_all(side_pos,"yp_power"))
arr.add(side_pos);
if (state.stringId.contains("yp_power"))
arr.add(pos.getOffsetBlockPos(world, 0, 1, 0));
if (state.stringId.contains("ym_power"))
arr.add(pos.getOffsetBlockPos(world, 0, -1, 0));
side_pos = pos.getOffsetBlockPos(zone, 0, 0, 1);
if (state.stringId.contains("zp_power") && block_has_dir_or_all(side_pos,"zm_power"))
arr.add(side_pos);
side_pos = pos.getOffsetBlockPos(zone, 0, 0, -1);
if (state.stringId.contains("zm_power") && block_has_dir_or_all(side_pos,"zp_power"))
arr.add(side_pos);
if (state.stringId.contains("zp_power"))
arr.add(pos.getOffsetBlockPos(world, 0, 0, 1));
if (state.stringId.contains("zm_power"))
arr.add(pos.getOffsetBlockPos(world, 0, 0, -1));
if (arr.size<=0) {
arr.add(pos.getOffsetBlockPos(zone, 1, 0, 0));
arr.add(pos.getOffsetBlockPos(zone, -1, 0, 0));
arr.add(pos.getOffsetBlockPos(world, 1, 0, 0));
arr.add(pos.getOffsetBlockPos(world, -1, 0, 0));
arr.add(pos.getOffsetBlockPos(zone, 0, 1, 0));
arr.add(pos.getOffsetBlockPos(zone, 0, -1, 0));
arr.add(pos.getOffsetBlockPos(world, 0, 1, 0));
arr.add(pos.getOffsetBlockPos(world, 0, -1, 0));
arr.add(pos.getOffsetBlockPos(zone, 0, 0, 1));
arr.add(pos.getOffsetBlockPos(zone, 0, 0, -1));
arr.add(pos.getOffsetBlockPos(world, 0, 0, 1));
arr.add(pos.getOffsetBlockPos(world, 0, 0, -1));
}
return arr;
}
public Boolean block_has_dir_or_all(BlockPosition pos, String dir){
if (pos==null)
return false;
BlockState state = pos.getBlockState();
if (state==null)
return false;
return state.stringId.contains(dir) || state.stringId.contains("any_in_power") || !(
state.stringId.contains("xp_power")||
state.stringId.contains("xm_power")||
state.stringId.contains("yp_power")||
state.stringId.contains("ym_power")||
state.stringId.contains("zp_power")||
state.stringId.contains("zm_power")
);
}
}

View file

@ -31,7 +31,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/switch_006.ogg",
"sound": "omni_power:switch_006.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -31,7 +31,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/switch_005.ogg",
"sound": "omni_power:switch_005.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -20,7 +20,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/maximize_006.ogg",
"sound": "omni_power:maximize_006.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -20,7 +20,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/minimize_006.ogg",
"sound": "omni_power:minimize_006.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -20,7 +20,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/maximize_006.ogg",
"sound": "omni_power:maximize_006.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -20,7 +20,7 @@
"actionId": "base:play_sound_2d",
"parameters":
{
"sound": "omni_power:sounds/blocks/minimize_006.ogg",
"sound": "omni_power:minimize_006.ogg",
"volume": 1,
"pitch": 1,
"pan": 0

View file

@ -4,8 +4,9 @@
{
"default,cable_red":
{
"modelName": "omni_power:models/blocks/model_cable_red.json",
"modelName": "omni_power:model_cable_red",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -13,8 +14,9 @@
},
"default,cable_red,slim":
{
"modelName": "omni_power:models/blocks/model_cable_red_slim.json",
"modelName": "omni_power:model_cable_red_slim",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": false,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -24,8 +26,9 @@
"default,cable_blue":
{
"modelName": "omni_power:models/blocks/model_cable_blue.json",
"modelName": "omni_power:model_cable_blue",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -33,8 +36,9 @@
},
"default,cable_blue,slim":
{
"modelName": "omni_power:models/blocks/model_cable_blue_slim.json",
"modelName": "omni_power:model_cable_blue_slim",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": false,
"lightLevelRed": 0,
"lightLevelGreen": 0,

View file

@ -4,9 +4,10 @@
{
"default,cable_red,cable_blue":
{
"modelName": "omni_power:models/blocks/model_cable_merger.json",
"modelName": "omni_power:model_cable_merger",
"blockEventsId": "omni_power:block_events_cable_merger_off",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -14,9 +15,10 @@
},
"powered,cable_red,cable_blue":
{
"modelName": "omni_power:models/blocks/model_cable_merger_powered.json",
"modelName": "omni_power:model_cable_merger_powered",
"blockEventsId": "omni_power:block_events_cable_merger_on",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -26,9 +28,10 @@
"default,cable_red,cable_blue,slim":
{
"modelName": "omni_power:models/blocks/model_cable_merger_slim.json",
"modelName": "omni_power:model_cable_merger_slim",
"blockEventsId": "omni_power:block_events_cable_merger_slim_off",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": false,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -36,9 +39,10 @@
},
"powered,cable_red,cable_blue,slim":
{
"modelName": "omni_power:models/blocks/model_cable_merger_slim_powered.json",
"modelName": "omni_power:model_cable_merger_slim_powered",
"blockEventsId": "omni_power:block_events_cable_merger_slim_on",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": false,
"lightLevelRed": 0,
"lightLevelGreen": 0,

View file

@ -4,9 +4,10 @@
{
"default,cable_red,cable_blue":
{
"modelName": "omni_power:models/blocks/model_door_cube.json",
"modelName": "omni_power:model_door_cube",
"blockEventsId": "omni_power:block_events_door_cube_off",
"isTransparent": true,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -14,10 +15,11 @@
},
"powered,cable_red,cable_blue":
{
"modelName": "omni_power:models/blocks/model_door_cube_powered.json",
"modelName": "omni_power:model_door_cube_powered",
"blockEventsId": "omni_power:block_events_door_cube_on",
"isTransparent": true,
"isOpaque": true,
"generateSlabs": false,
"isOpaque": false,
"lightLevelRed": 0,
"lightLevelGreen": 0,
"lightLevelBlue": 0,

View file

@ -4,9 +4,10 @@
{
"default,cable_red":
{
"modelName": "omni_power:models/blocks/model_lever_red.json",
"modelName": "omni_power:model_lever_red",
"blockEventsId": "omni_power:block_events_lever_red_off",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -14,9 +15,10 @@
},
"powered,cable_red":
{
"modelName": "omni_power:models/blocks/model_lever_red_powered.json",
"modelName": "omni_power:model_lever_red_powered",
"blockEventsId": "omni_power:block_events_lever_red_on",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -27,9 +29,10 @@
"default,cable_blue":
{
"modelName": "omni_power:models/blocks/model_lever_blue.json",
"modelName": "omni_power:model_lever_blue",
"blockEventsId": "omni_power:block_events_lever_blue_off",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
@ -37,9 +40,10 @@
},
"powered,cable_blue":
{
"modelName": "omni_power:models/blocks/model_lever_blue_powered.json",
"modelName": "omni_power:model_lever_blue_powered",
"blockEventsId": "omni_power:block_events_lever_blue_on",
"isTransparent": false,
"generateSlabs": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:cable_blue.png"
},
"bottom":
{
"fileName": "omni_power:cable_blue.png"
},
"side":
{
"fileName": "omni_power:cable_blue.png"
}
}
}

View file

@ -4,15 +4,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
"fileName": "omni_power:cable_blue.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
"fileName": "omni_power:cable_blue.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
"fileName": "omni_power:cable_blue.png"
}
},

View file

@ -3,15 +3,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
}
},

View file

@ -3,15 +3,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
}
},

View file

@ -4,15 +4,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_merger.png"
"fileName": "omni_power:cable_merger.png"
}
},

View file

@ -4,15 +4,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_merger_2.png"
"fileName": "omni_power:cable_merger_2.png"
}
},

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:cable_red.png"
},
"bottom":
{
"fileName": "omni_power:cable_red.png"
},
"side":
{
"fileName": "omni_power:cable_red.png"
}
}
}

View file

@ -4,15 +4,15 @@
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
"fileName": "omni_power:cable_red.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
"fileName": "omni_power:cable_red.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
"fileName": "omni_power:cable_red.png"
}
},

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:door.png"
},
"bottom":
{
"fileName": "omni_power:door.png"
},
"side":
{
"fileName": "omni_power:door.png"
}
}
}

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:door_powered.png"
},
"bottom":
{
"fileName": "omni_power:door_powered.png"
},
"side":
{
"fileName": "omni_power:door_powered.png"
}
}
}

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:lever_off_blue.png"
},
"bottom":
{
"fileName": "omni_power:lever_off_blue.png"
},
"side":
{
"fileName": "omni_power:lever_off_blue.png"
}
}
}

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:lever_on_blue.png"
},
"bottom":
{
"fileName": "omni_power:lever_on_blue.png"
},
"side":
{
"fileName": "omni_power:lever_on_blue.png"
}
}
}

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:lever_off_red.png"
},
"bottom":
{
"fileName": "omni_power:lever_off_red.png"
},
"side":
{
"fileName": "omni_power:lever_off_red.png"
}
}
}

View file

@ -0,0 +1,20 @@
{
"parent": "cube",
"textures":
{
"top":
{
"fileName": "omni_power:lever_on_red.png"
},
"bottom":
{
"fileName": "omni_power:lever_on_red.png"
},
"side":
{
"fileName": "omni_power:lever_on_red.png"
}
}
}

View file

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

Before

Width:  |  Height:  |  Size: 567 B

After

Width:  |  Height:  |  Size: 567 B

View file

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View file

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View file

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View file

Before

Width:  |  Height:  |  Size: 551 B

After

Width:  |  Height:  |  Size: 551 B

View file

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 555 B

View file

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 555 B

View file

@ -1,56 +0,0 @@
omni_power:assets.txt
omni_power:blocks\cable.json
omni_power:blocks\cable_adapter.json
omni_power:blocks\cable_merger.json
omni_power:blocks\door_cube.json
omni_power:blocks\lever.json
omni_power:block_events\block_events_cable_merger_off.json
omni_power:block_events\block_events_cable_merger_on.json
omni_power:block_events\block_events_cable_merger_slim_off.json
omni_power:block_events\block_events_cable_merger_slim_on.json
omni_power:block_events\block_events_door_cube_off.json
omni_power:block_events\block_events_door_cube_on.json
omni_power:block_events\block_events_lever_blue_off.json
omni_power:block_events\block_events_lever_blue_on.json
omni_power:block_events\block_events_lever_red_off.json
omni_power:block_events\block_events_lever_red_on.json
omni_power:block_events\adapter\cable_adapter_blue_off.json
omni_power:block_events\adapter\cable_adapter_blue_on.json
omni_power:block_events\adapter\cable_adapter_red_off.json
omni_power:block_events\adapter\cable_adapter_red_on.json
omni_power:models\blocks\model_cable_blue.json
omni_power:models\blocks\model_cable_blue_slim.json
omni_power:models\blocks\model_cable_merger.json
omni_power:models\blocks\model_cable_merger_powered.json
omni_power:models\blocks\model_cable_merger_slim.json
omni_power:models\blocks\model_cable_merger_slim_powered.json
omni_power:models\blocks\model_cable_red.json
omni_power:models\blocks\model_cable_red_slim.json
omni_power:models\blocks\model_door_cube.json
omni_power:models\blocks\model_door_cube_powered.json
omni_power:models\blocks\model_lever_blue.json
omni_power:models\blocks\model_lever_blue_powered.json
omni_power:models\blocks\model_lever_red.json
omni_power:models\blocks\model_lever_red_powered.json
omni_power:sounds\blocks\drop_004.ogg
omni_power:sounds\blocks\maximize_006.ogg
omni_power:sounds\blocks\minimize_006.ogg
omni_power:sounds\blocks\select_006.ogg
omni_power:sounds\blocks\switch_005.ogg
omni_power:sounds\blocks\switch_006.ogg
omni_power:textures\blocks\cable_adapter_blue.png
omni_power:textures\blocks\cable_adapter_red.png
omni_power:textures\blocks\cable_blue.png
omni_power:textures\blocks\cable_merger.png
omni_power:textures\blocks\cable_merger_2.png
omni_power:textures\blocks\cable_red.png
omni_power:textures\blocks\door.png
omni_power:textures\blocks\door_powered.png
omni_power:textures\blocks\emergency.png
omni_power:textures\blocks\flat.png
omni_power:textures\blocks\lever_off_blue.png
omni_power:textures\blocks\lever_off_red.png
omni_power:textures\blocks\lever_on_blue.png
omni_power:textures\blocks\lever_on_red.png
omni_power:models\blocks\adapter\model_cable_adapter_blue.json
omni_power:models\blocks\adapter\model_cable_adapter_red.json

View file

@ -1,86 +0,0 @@
{
"parent":"base:block_events_default",
"stringId": "omni_power:adapter/cable_adapter_blue_off",
"triggers":
{
"universal_power":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[powered,cable_blue]"
}
},
{
"actionId": "omni_power:power",
"parameters":
{
"triggerId": "power_up_blue",
"cable_group": "cable_blue",
"self_run": false
}
}
],
"power_up_blue":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[powered,cable_blue]"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 1, "yOff": 0, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": -1, "yOff": 0, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 1, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": -1, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 1,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": -1,
"triggerId": "universal_power"
}
}
]
}
}

View file

@ -1,86 +0,0 @@
{
"parent":"base:block_events_default",
"stringId": "omni_power:adapter/cable_adapter_blue_on",
"triggers":
{
"universal_unpower":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[default,cable_blue]"
}
},
{
"actionId": "omni_power:power",
"parameters":
{
"triggerId": "power_down_blue",
"cable_group": "cable_blue",
"self_run": false
}
}
],
"power_down_blue":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[default,cable_blue]"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 1, "yOff": 0, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": -1, "yOff": 0, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 1, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": -1, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 1,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": -1,
"triggerId": "universal_unpower"
}
}
]
}
}

View file

@ -1,86 +0,0 @@
{
"parent":"base:block_events_default",
"stringId": "omni_power:adapter/cable_adapter_red_off",
"triggers":
{
"universal_power":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[powered,cable_red]"
}
},
{
"actionId": "omni_power:power",
"parameters":
{
"triggerId": "power_up_red",
"cable_group": "cable_red",
"self_run": false
}
}
],
"power_up_red":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[powered,cable_red]"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 1, "yOff": 0, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": -1, "yOff": 0, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 1, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": -1, "zOff": 0,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 1,
"triggerId": "universal_power"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": -1,
"triggerId": "universal_power"
}
}
]
}
}

View file

@ -1,86 +0,0 @@
{
"parent":"base:block_events_default",
"stringId": "omni_power:adapter/cable_adapter_red_on",
"triggers":
{
"universal_unpower":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[default,cable_red]"
}
},
{
"actionId": "omni_power:power",
"parameters":
{
"triggerId": "power_down_red",
"cable_group": "cable_red",
"self_run": false
}
}
],
"power_down_red":
[
{
"actionId": "base:replace_block_state",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 0,
"blockStateId": "omni_power:cable_adapter[default,cable_red]"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 1, "yOff": 0, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": -1, "yOff": 0, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 1, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": -1, "zOff": 0,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": 1,
"triggerId": "universal_unpower"
}
},
{
"actionId": "base:run_trigger",
"parameters":
{
"xOff": 0, "yOff": 0, "zOff": -1,
"triggerId": "universal_unpower"
}
}
]
}
}

View file

@ -1,49 +0,0 @@
{
"stringId": "omni_power:cable_adapter",
"blockStates":
{
"default,cable_red":
{
"modelName": "omni_power:models/blocks/adapter/model_cable_adapter_red.json",
"blockEventsId": "omni_power:adapter/cable_adapter_red_off",
"isTransparent": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
"lightLevelBlue": 0
},
"powered,cable_red":
{
"modelName": "omni_power:models/blocks/adapter/model_cable_adapter_red.json",
"blockEventsId": "omni_power:adapter/cable_adapter_red_on",
"isTransparent": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
"lightLevelBlue": 0,
"catalogHidden": true
},
"default,cable_blue":
{
"modelName": "omni_power:models/blocks/adapter/model_cable_adapter_blue.json",
"blockEventsId": "omni_power:adapter/cable_adapter_blue_off",
"isTransparent": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
"lightLevelBlue": 0
},
"powered,cable_blue":
{
"modelName": "omni_power:models/blocks/adapter/model_cable_adapter_blue.json",
"blockEventsId": "omni_power:adapter/cable_adapter_blue_on",
"isTransparent": false,
"isOpaque": true,
"lightLevelRed": 0,
"lightLevelGreen": 0,
"lightLevelBlue": 0,
"catalogHidden": true
}
}
}

View file

@ -1,19 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_adapter_blue.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_adapter_blue.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_adapter_blue.png"
}
}
}

View file

@ -1,19 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_adapter_red.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_adapter_red.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_adapter_red.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_blue.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/cable_red.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/door.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/door.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/door.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/door_powered.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/door_powered.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/door_powered.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/lever_off_blue.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/lever_off_blue.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/lever_off_blue.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/lever_on_blue.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/lever_on_blue.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/lever_on_blue.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/lever_off_red.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/lever_off_red.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/lever_off_red.png"
}
}
}

View file

@ -1,20 +0,0 @@
{
"parent": "base:models/blocks/cube.json",
"textures":
{
"top":
{
"fileName": "omni_power:textures/blocks/lever_on_red.png"
},
"bottom":
{
"fileName": "omni_power:textures/blocks/lever_on_red.png"
},
"side":
{
"fileName": "omni_power:textures/blocks/lever_on_red.png"
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

View file

@ -21,7 +21,7 @@
"sources": "https://example.com/"
},
"icon": "omnipower_icon.png"
"icon": "assets/pop_structures/icon.png"
},
"entrypoints": {
@ -31,11 +31,15 @@
"depends": [
{
"id": "cosmic_quilt",
"versions": ">=2.0.2"
"versions": "*"
},
{
"id": "cosmic_reach",
"versions": ">=0.3.1"
"versions": "*"
},
{
"id": "fluxapi",
"versions": ">=0.4.0"
}
]
},

View file

@ -1,8 +0,0 @@
#!/usr/bin/env -S godot -s
extends SceneTree
func _init():
var repo_link = https://git.percraft.net:444/api/v1/repos/pietru/CR_OmniPower_Mod/releases/latest
print("Hello!")
#'${{secrets.RELEASE_TOKEN}}'
quit()