This commit is contained in:
parent
e466ce94d7
commit
f08b8d340f
7 changed files with 168 additions and 42 deletions
48
.forgejo/workflows/release_publish.yaml.disabled
Normal file
48
.forgejo/workflows/release_publish.yaml.disabled
Normal file
|
@ -0,0 +1,48 @@
|
|||
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 }}."
|
||||
|
||||
|
13
assets.py
Normal file
13
assets.py
Normal file
|
@ -0,0 +1,13 @@
|
|||
import os
|
||||
|
||||
root_dir = './src/main/resources/omni_power' # current directory
|
||||
pattern = '*.json' # file extension or pattern
|
||||
assets_txt = './src/main/resources/omni_power/assets.txt' # current directory
|
||||
|
||||
files = []
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir):
|
||||
for filename in filenames:
|
||||
if fnmatch.fnmatch(filename, pattern):
|
||||
files.append(os.path.join(dirpath, filename))
|
||||
|
||||
print(files)
|
26
build.gradle
26
build.gradle
|
@ -75,6 +75,31 @@ dependencies {
|
|||
|
||||
//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()
|
||||
}
|
||||
|
||||
processResources {
|
||||
|
@ -121,6 +146,7 @@ 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"
|
||||
|
|
|
@ -4,7 +4,7 @@ org.gradle.parallel=true
|
|||
org.gradle.caching=false
|
||||
|
||||
# Project Info
|
||||
version=1.7.1
|
||||
version=1.7.2
|
||||
group=net.pietru
|
||||
id=omni_power
|
||||
|
||||
|
|
|
@ -8,12 +8,18 @@ import net.pietru.omni_power.blockevents.Power;
|
|||
import dev.crmodders.cosmicquilt.api.entrypoint.ModInitializer;
|
||||
import org.quiltmc.loader.api.ModContainer;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
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";
|
||||
|
@ -32,14 +38,12 @@ public class OmniPower implements ModInitializer {
|
|||
|
||||
load_power_event();
|
||||
|
||||
|
||||
try {
|
||||
for (String path : getResourceFiles("omni_power/block_events")){
|
||||
System.out.println("Loading "+path);
|
||||
BlockEvents.loadBlockEventsFromAsset(Gdx.files.classpath(path));
|
||||
}
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
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");
|
||||
|
@ -64,34 +68,5 @@ public class OmniPower implements ModInitializer {
|
|||
System.out.println("If msg above says something Duplicate block event action key it might be intended behaviour...");
|
||||
}
|
||||
}
|
||||
|
||||
public List<String> getResourceFiles(String path) throws IOException {
|
||||
List<String> filenames = new ArrayList<>();
|
||||
|
||||
try (
|
||||
InputStream in = getResourceAsStream(path);
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(in))) {
|
||||
String resource;
|
||||
|
||||
while ((resource = br.readLine()) != null) {
|
||||
if (resource.endsWith(".json"))
|
||||
filenames.add(path+"/"+resource);
|
||||
else
|
||||
filenames.addAll(getResourceFiles(path+"/"+resource));
|
||||
}
|
||||
}
|
||||
|
||||
return filenames;
|
||||
}
|
||||
|
||||
private InputStream getResourceAsStream(String resource) {
|
||||
final InputStream in = getContextClassLoader().getResourceAsStream(resource);
|
||||
|
||||
return in == null ? getClass().getResourceAsStream(resource) : in;
|
||||
}
|
||||
|
||||
private ClassLoader getContextClassLoader() {
|
||||
return Thread.currentThread().getContextClassLoader();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
56
src/main/resources/omni_power/assets.txt
Normal file
56
src/main/resources/omni_power/assets.txt
Normal file
|
@ -0,0 +1,56 @@
|
|||
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
|
8
upload_new_release.gd
Normal file
8
upload_new_release.gd
Normal file
|
@ -0,0 +1,8 @@
|
|||
#!/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()
|
Loading…
Reference in a new issue