Arbeiten aus dem URlaub
This commit is contained in:
74
.gitignore
vendored
74
.gitignore
vendored
@@ -1,74 +1,8 @@
|
||||
# ── Gradle ──────────────────────────────────────────────────────────────────
|
||||
.gradle/
|
||||
**/build/
|
||||
gradle-app.setting
|
||||
!gradle/wrapper/gradle-wrapper.jar
|
||||
!**/gradle/wrapper/gradle-wrapper.jar
|
||||
/.metadata/
|
||||
/.gradle/
|
||||
|
||||
# ── Kompilate & Archive ──────────────────────────────────────────────────────
|
||||
*.class
|
||||
*.jar
|
||||
!gradle/wrapper/gradle-wrapper.jar
|
||||
!**/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
# ── Laufzeit-Konfiguration (benutzerspezifisch, nicht ins Repo) ──────────────
|
||||
/config/
|
||||
/blight-game/config/
|
||||
/blight-editor/config/
|
||||
/blight-editor/editor-assets/
|
||||
|
||||
# ── JVM-Crashdumps & Logs ────────────────────────────────────────────────────
|
||||
hs_err_pid*.log
|
||||
replay_pid*.log
|
||||
*.log
|
||||
nohup.out
|
||||
|
||||
# ── Native Bibliotheken (werden beim Build extrahiert) ───────────────────────
|
||||
*.so
|
||||
*.dll
|
||||
*.dylib
|
||||
*.jnilib
|
||||
|
||||
# ── IntelliJ IDEA ────────────────────────────────────────────────────────────
|
||||
.idea/
|
||||
*.iml
|
||||
*.ipr
|
||||
*.iws
|
||||
out/
|
||||
|
||||
# ── Eclipse ──────────────────────────────────────────────────────────────────
|
||||
# Eclipse project files
|
||||
.project
|
||||
.classpath
|
||||
.settings/
|
||||
*.launch
|
||||
.factorypath
|
||||
|
||||
# ── NetBeans ─────────────────────────────────────────────────────────────────
|
||||
nbproject/
|
||||
nbactions.xml
|
||||
nb-configuration.xml
|
||||
|
||||
# ── VS Code ──────────────────────────────────────────────────────────────────
|
||||
.vscode/
|
||||
|
||||
# ── macOS ────────────────────────────────────────────────────────────────────
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
|
||||
# ── Windows ──────────────────────────────────────────────────────────────────
|
||||
Thumbs.db
|
||||
desktop.ini
|
||||
ehthumbs.db
|
||||
|
||||
# ── Linux ────────────────────────────────────────────────────────────────────
|
||||
*~
|
||||
.fuse_hidden*
|
||||
|
||||
# ── Editor-Backup & Temporärdateien ─────────────────────────────────────────
|
||||
*.swp
|
||||
*.swo
|
||||
*.tmp
|
||||
*.temp
|
||||
*.bak
|
||||
*.orig
|
||||
bin/
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#Thu May 07 06:27:32 CEST 2026
|
||||
display=\:0
|
||||
host=mario-mint
|
||||
process-id=5833
|
||||
user=mario
|
||||
#Sun May 10 10:13:47 CEST 2026
|
||||
host=BOOK-0F2PQ8OG21
|
||||
process-id=27380
|
||||
user=mario
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[ {
|
||||
"version" : "9.5.1-20260506020515+0000",
|
||||
"buildTime" : "20260506020515+0000",
|
||||
"commitId" : "b040c334940608c621fdbb778381ebdae66606d4",
|
||||
"version" : "9.5.1-20260510022507+0000",
|
||||
"buildTime" : "20260510022507+0000",
|
||||
"commitId" : "fd78213f09782e62ca4957f9cfd3d90c6c3f1767",
|
||||
"current" : false,
|
||||
"snapshot" : true,
|
||||
"nightly" : false,
|
||||
@@ -10,15 +10,15 @@
|
||||
"rcFor" : "",
|
||||
"milestoneFor" : "",
|
||||
"broken" : false,
|
||||
"downloadUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260506020515+0000-bin.zip",
|
||||
"checksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260506020515+0000-bin.zip.sha256",
|
||||
"checksum" : "ac52cb57303ce63a3131a7c079776ba70fc2b3e317dd311a27c092c96dc953f4",
|
||||
"wrapperChecksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260506020515+0000-wrapper.jar.sha256",
|
||||
"downloadUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260510022507+0000-bin.zip",
|
||||
"checksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260510022507+0000-bin.zip.sha256",
|
||||
"checksum" : "31ee63072850e69db0372d24655dbef7680aee3afaec2442d6395fc7ca672fd2",
|
||||
"wrapperChecksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.5.1-20260510022507+0000-wrapper.jar.sha256",
|
||||
"wrapperChecksum" : "497c8c2a7e5031f6aa847f88104aa80a93532ec32ee17bdb8d1d2f67a194a9c7"
|
||||
}, {
|
||||
"version" : "9.6.0-20260506005135+0000",
|
||||
"buildTime" : "20260506005135+0000",
|
||||
"commitId" : "44a190b8db5f6911020cba90f7a2642c02eba7bb",
|
||||
"version" : "9.6.0-20260510003052+0000",
|
||||
"buildTime" : "20260510003052+0000",
|
||||
"commitId" : "62000451ad7b25de53fa89a155ef8ecb401621bb",
|
||||
"current" : false,
|
||||
"snapshot" : true,
|
||||
"nightly" : true,
|
||||
@@ -27,11 +27,28 @@
|
||||
"rcFor" : "",
|
||||
"milestoneFor" : "",
|
||||
"broken" : false,
|
||||
"downloadUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260506005135+0000-bin.zip",
|
||||
"checksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260506005135+0000-bin.zip.sha256",
|
||||
"checksum" : "b746b4a02191ca19a49a8d492e371328b65d251f5aa463d9f68f96349d969546",
|
||||
"wrapperChecksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260506005135+0000-wrapper.jar.sha256",
|
||||
"downloadUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260510003052+0000-bin.zip",
|
||||
"checksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260510003052+0000-bin.zip.sha256",
|
||||
"checksum" : "7dca215df18a26f56705b82a860eed7dde169117d0f298d4ed0a296778a3e1e4",
|
||||
"wrapperChecksumUrl" : "https://services.gradle.org/distributions-snapshots/gradle-9.6.0-20260510003052+0000-wrapper.jar.sha256",
|
||||
"wrapperChecksum" : "497c8c2a7e5031f6aa847f88104aa80a93532ec32ee17bdb8d1d2f67a194a9c7"
|
||||
}, {
|
||||
"version" : "8.14.5",
|
||||
"buildTime" : "20260507110329+0000",
|
||||
"commitId" : "62345becae08b13e793521816d585102fea66398",
|
||||
"current" : false,
|
||||
"snapshot" : false,
|
||||
"nightly" : false,
|
||||
"releaseNightly" : false,
|
||||
"activeRc" : false,
|
||||
"rcFor" : "",
|
||||
"milestoneFor" : "",
|
||||
"broken" : false,
|
||||
"downloadUrl" : "https://services.gradle.org/distributions/gradle-8.14.5-bin.zip",
|
||||
"checksumUrl" : "https://services.gradle.org/distributions/gradle-8.14.5-bin.zip.sha256",
|
||||
"checksum" : "6f74b601422d6d6fc4e1f9a1ab6522f642c2fdcbc15ae33ebd30ba3d7198e854",
|
||||
"wrapperChecksumUrl" : "https://services.gradle.org/distributions/gradle-8.14.5-wrapper.jar.sha256",
|
||||
"wrapperChecksum" : "7d3a4ac4de1c32b59bc6a4eb8ecb8e612ccd0cf1ae1e99f66902da64df296172"
|
||||
}, {
|
||||
"version" : "9.5.0",
|
||||
"buildTime" : "20260428120530+0000",
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2023 Gradle Inc. and others
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
******************************************************************************/
|
||||
initscript {
|
||||
allprojects {
|
||||
apply plugin: "eclipse"
|
||||
}
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2023 Gradle Inc. and others
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
******************************************************************************/
|
||||
initscript {
|
||||
allprojects {
|
||||
apply plugin: "eclipse"
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -1,13 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<section name="org.eclipse.buildship.ui.wizard.project.import">
|
||||
<item key="project_location" value="/home/mario/Workspaces/blight/blight-game"/>
|
||||
<section name="ProjectImportWizard.dialogBounds">
|
||||
<item key="DIALOG_X_ORIGIN" value="1018"/>
|
||||
<item key="DIALOG_Y_ORIGIN" value="363"/>
|
||||
<item key="DIALOG_WIDTH" value="525"/>
|
||||
<item key="DIALOG_HEIGHT" value="761"/>
|
||||
<item key="DIALOG_FONT_NAME" value="1|Ubuntu|10.0|0|GTK|1|"/>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<section name="Workbench">
|
||||
<section name="org.eclipse.buildship.ui.wizard.project.import">
|
||||
<item key="project_location" value="C:\Projekte\blight\blight"/>
|
||||
<section name="ProjectImportWizard.dialogBounds">
|
||||
<item key="DIALOG_X_ORIGIN" value="420"/>
|
||||
<item key="DIALOG_Y_ORIGIN" value="102"/>
|
||||
<item key="DIALOG_WIDTH" value="613"/>
|
||||
<item key="DIALOG_HEIGHT" value="742"/>
|
||||
<item key="DIALOG_FONT_NAME" value="1|Segoe UI|9.0|0|WINDOWS|1|-24|0|0|0|400|0|0|0|1|0|0|0|0|Segoe UI"/>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
arguments=
|
||||
auto.sync=false
|
||||
build.scans.enabled=false
|
||||
connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER)
|
||||
eclipse.preferences.version=1
|
||||
gradle.user.home=
|
||||
java.home=
|
||||
jvm.arguments=
|
||||
offline.mode=false
|
||||
override.workspace.settings=false
|
||||
show.console.view=false
|
||||
show.executions.view=false
|
||||
@@ -1,35 +0,0 @@
|
||||
package de.blight.game;
|
||||
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.system.AppSettings;
|
||||
import de.blight.game.scene.WorldScene;
|
||||
|
||||
public class BlightApp extends SimpleApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlightApp app = new BlightApp();
|
||||
|
||||
AppSettings settings = new AppSettings(true);
|
||||
settings.setTitle("Blight");
|
||||
settings.setResolution(1280, 720);
|
||||
settings.setFrameRate(60);
|
||||
settings.setVSync(true);
|
||||
settings.setSamples(4);
|
||||
|
||||
app.setSettings(settings);
|
||||
app.setShowSettings(false);
|
||||
app.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleInitApp() {
|
||||
// Standard-FlyCamera deaktivieren — wir steuern die Kamera selbst
|
||||
flyCam.setEnabled(false);
|
||||
|
||||
stateManager.attach(new WorldScene());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleUpdate(float tpf) {
|
||||
}
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
package de.blight.game;
|
||||
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.system.AppSettings;
|
||||
import de.blight.game.scene.WorldScene;
|
||||
|
||||
public class BlightApp extends SimpleApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlightApp app = new BlightApp();
|
||||
|
||||
AppSettings settings = new AppSettings(true);
|
||||
settings.setTitle("Blight");
|
||||
settings.setResolution(1280, 720);
|
||||
settings.setVSync(true);
|
||||
settings.setSamples(4);
|
||||
|
||||
app.setSettings(settings);
|
||||
app.setShowSettings(false);
|
||||
app.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleInitApp() {
|
||||
// Standard-FlyCamera deaktivieren — wir steuern die Kamera selbst
|
||||
flyCam.setEnabled(false);
|
||||
|
||||
stateManager.attach(new WorldScene());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleUpdate(float tpf) {
|
||||
}
|
||||
}
|
||||
@@ -1,307 +0,0 @@
|
||||
package de.blight.game.config;
|
||||
|
||||
import com.jme3.app.Application;
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.app.state.BaseAppState;
|
||||
import com.jme3.font.BitmapFont;
|
||||
import com.jme3.font.BitmapText;
|
||||
import com.jme3.input.KeyInput;
|
||||
import com.jme3.input.MouseInput;
|
||||
import com.jme3.input.RawInputListener;
|
||||
import com.jme3.input.controls.ActionListener;
|
||||
import com.jme3.input.controls.MouseButtonTrigger;
|
||||
import com.jme3.input.event.*;
|
||||
import com.jme3.input.event.KeyInputEvent;
|
||||
import com.jme3.input.event.MouseButtonEvent;
|
||||
import com.jme3.input.event.MouseMotionEvent;
|
||||
import com.jme3.input.event.JoyAxisEvent;
|
||||
import com.jme3.input.event.JoyButtonEvent;
|
||||
import com.jme3.input.event.TouchEvent;
|
||||
import com.jme3.material.Material;
|
||||
import com.jme3.material.RenderState;
|
||||
import com.jme3.math.ColorRGBA;
|
||||
import com.jme3.math.Vector2f;
|
||||
import com.jme3.renderer.queue.RenderQueue;
|
||||
import com.jme3.scene.Geometry;
|
||||
import com.jme3.scene.Node;
|
||||
import com.jme3.scene.shape.Quad;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Overlay-AppState der die Tastenbelegungs-Maske anzeigt.
|
||||
*
|
||||
* ESC → Schließen (ohne Speichern)
|
||||
* Klick auf Row → wartet auf neue Taste
|
||||
* ESC während Warten → bricht nur die Zuweisung ab
|
||||
* Speichern → schreibt JSON, ruft onSave-Callback
|
||||
*/
|
||||
public class ConfigScreen extends BaseAppState implements RawInputListener {
|
||||
|
||||
// Farben
|
||||
private static final ColorRGBA COL_BG = new ColorRGBA(0.05f, 0.05f, 0.08f, 0.88f);
|
||||
private static final ColorRGBA COL_PANEL = new ColorRGBA(0.10f, 0.10f, 0.16f, 1.00f);
|
||||
private static final ColorRGBA COL_ROW = new ColorRGBA(0.18f, 0.18f, 0.28f, 1.00f);
|
||||
private static final ColorRGBA COL_ROW_HOVER = new ColorRGBA(0.25f, 0.25f, 0.40f, 1.00f);
|
||||
private static final ColorRGBA COL_ROW_WAIT = new ColorRGBA(0.50f, 0.30f, 0.10f, 1.00f);
|
||||
private static final ColorRGBA COL_BTN_SAVE = new ColorRGBA(0.15f, 0.40f, 0.15f, 1.00f);
|
||||
private static final ColorRGBA COL_BTN_CANCEL = new ColorRGBA(0.40f, 0.15f, 0.15f, 1.00f);
|
||||
private static final ColorRGBA COL_TEXT = ColorRGBA.White;
|
||||
private static final ColorRGBA COL_TEXT_KEY = new ColorRGBA(0.85f, 0.85f, 0.50f, 1.00f);
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private SimpleApplication app;
|
||||
private Node guiNode;
|
||||
private BitmapFont font;
|
||||
|
||||
private KeyBindings liveBindings; // geteilt mit der ganzen App
|
||||
private KeyBindings editCopy; // wird beim Öffnen geklont
|
||||
|
||||
private Runnable onSave; // Callback → PlayerInputControl.reloadBindings
|
||||
|
||||
private Node panel;
|
||||
private List<Row> rows = new ArrayList<>();
|
||||
private int waitingRow = -1; // -1 = keine Zuweisung aktiv
|
||||
|
||||
// UI-Elemente für Buttons (Bounds in Screen-Koordinaten)
|
||||
private float saveBtnX, saveBtnY, saveBtnW, saveBtnH;
|
||||
private float cancelBtnX, cancelBtnY;
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private static class Row {
|
||||
String field;
|
||||
String label;
|
||||
BitmapText keyText;
|
||||
Geometry bg;
|
||||
float x, y, w, h; // Button-Bounds
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
public ConfigScreen(KeyBindings liveBindings, Runnable onSave) {
|
||||
this.liveBindings = liveBindings;
|
||||
this.onSave = onSave;
|
||||
}
|
||||
|
||||
public boolean isWaiting() { return waitingRow >= 0; }
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Lifecycle
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
protected void initialize(Application app) {
|
||||
this.app = (SimpleApplication) app;
|
||||
this.guiNode = this.app.getGuiNode();
|
||||
this.font = app.getAssetManager().loadFont("Interface/Fonts/Default.fnt");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onEnable() {
|
||||
editCopy = liveBindings.copy();
|
||||
waitingRow = -1;
|
||||
buildUI();
|
||||
app.getInputManager().setCursorVisible(true);
|
||||
app.getInputManager().addRawInputListener(this);
|
||||
app.getInputManager().addMapping("_CfgClick", new MouseButtonTrigger(MouseInput.BUTTON_LEFT));
|
||||
app.getInputManager().addListener(clickListener, "_CfgClick");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDisable() {
|
||||
if (panel != null) { guiNode.detachChild(panel); panel = null; }
|
||||
rows.clear();
|
||||
waitingRow = -1;
|
||||
app.getInputManager().removeRawInputListener(this);
|
||||
app.getInputManager().deleteMapping("_CfgClick");
|
||||
app.getInputManager().setCursorVisible(false);
|
||||
}
|
||||
|
||||
@Override protected void cleanup(Application app) {}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// UI aufbauen
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private void buildUI() {
|
||||
float sw = app.getCamera().getWidth();
|
||||
float sh = app.getCamera().getHeight();
|
||||
|
||||
panel = new Node("cfg-panel");
|
||||
|
||||
// Halbdurchsichtiger Overlay über dem Spiel
|
||||
addQuad(panel, 0, 0, sw, sh, COL_BG, -2);
|
||||
|
||||
float pw = 720, ph = 440;
|
||||
float px = (sw - pw) / 2f, py = (sh - ph) / 2f;
|
||||
addQuad(panel, px, py, pw, ph, COL_PANEL, -1);
|
||||
|
||||
// Titel
|
||||
BitmapText title = text("TASTENBELEGUNG", 20, COL_TEXT);
|
||||
centerText(title, px, py + ph - 40, pw);
|
||||
panel.attachChild(title);
|
||||
|
||||
BitmapText hint = text("Klicke eine Taste um sie neu zu belegen", 14, new ColorRGBA(0.7f, 0.7f, 0.7f, 1f));
|
||||
centerText(hint, px, py + ph - 70, pw);
|
||||
panel.attachChild(hint);
|
||||
|
||||
// Reihen
|
||||
float rowX = px + 30;
|
||||
float keyX = px + pw - 220;
|
||||
float rowW = 180;
|
||||
float rowH = 36;
|
||||
float startY = py + ph - 110;
|
||||
float stepY = 48;
|
||||
|
||||
for (int i = 0; i < KeyBindings.ENTRIES.length; i++) {
|
||||
String[] entry = KeyBindings.ENTRIES[i];
|
||||
float ry = startY - i * stepY;
|
||||
|
||||
BitmapText lbl = text(entry[1], 16, COL_TEXT);
|
||||
lbl.setLocalTranslation(rowX, ry + rowH - 8, 0);
|
||||
panel.attachChild(lbl);
|
||||
|
||||
Geometry bg = addQuad(panel, keyX, ry, rowW, rowH, COL_ROW, 0);
|
||||
|
||||
BitmapText kt = text(KeyNames.of(editCopy.get(entry[0])), 16, COL_TEXT_KEY);
|
||||
kt.setLocalTranslation(keyX + 10, ry + rowH - 8, 1);
|
||||
panel.attachChild(kt);
|
||||
|
||||
Row row = new Row();
|
||||
row.field = entry[0];
|
||||
row.label = entry[1];
|
||||
row.keyText = kt;
|
||||
row.bg = bg;
|
||||
row.x = keyX; row.y = ry; row.w = rowW; row.h = rowH;
|
||||
rows.add(row);
|
||||
}
|
||||
|
||||
// Buttons
|
||||
float btnW = 160, btnH = 42;
|
||||
float btnY = py + 25;
|
||||
saveBtnX = px + pw / 2f - btnW - 15;
|
||||
saveBtnY = btnY;
|
||||
saveBtnW = btnW;
|
||||
saveBtnH = btnH;
|
||||
cancelBtnX = px + pw / 2f + 15;
|
||||
cancelBtnY = btnY;
|
||||
|
||||
addQuad(panel, saveBtnX, saveBtnY, btnW, btnH, COL_BTN_SAVE, 0);
|
||||
BitmapText saveLabel = text("Speichern", 16, COL_TEXT);
|
||||
centerText(saveLabel, saveBtnX, saveBtnY + btnH - 10, btnW);
|
||||
panel.attachChild(saveLabel);
|
||||
|
||||
addQuad(panel, cancelBtnX, cancelBtnY, btnW, btnH, COL_BTN_CANCEL, 0);
|
||||
BitmapText cancelLabel = text("Abbrechen", 16, COL_TEXT);
|
||||
centerText(cancelLabel, cancelBtnX, cancelBtnY + btnH - 10, btnW);
|
||||
panel.attachChild(cancelLabel);
|
||||
|
||||
guiNode.attachChild(panel);
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Mausklick
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private final ActionListener clickListener = (name, isPressed, tpf) -> {
|
||||
if (!isPressed) return;
|
||||
Vector2f cursor = app.getInputManager().getCursorPosition();
|
||||
|
||||
// Reihen prüfen
|
||||
for (int i = 0; i < rows.size(); i++) {
|
||||
Row r = rows.get(i);
|
||||
if (hits(cursor, r.x, r.y, r.w, r.h)) {
|
||||
waitingRow = i;
|
||||
r.bg.getMaterial().setColor("Color", COL_ROW_WAIT);
|
||||
r.keyText.setText("...");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Speichern
|
||||
if (hits(cursor, saveBtnX, saveBtnY, saveBtnW, saveBtnH)) {
|
||||
liveBindings.copyFrom(editCopy);
|
||||
KeyBindingStore.save(liveBindings);
|
||||
if (onSave != null) onSave.run();
|
||||
setEnabled(false);
|
||||
return;
|
||||
}
|
||||
|
||||
// Abbrechen
|
||||
if (hits(cursor, cancelBtnX, cancelBtnY, saveBtnW, saveBtnH)) {
|
||||
setEnabled(false);
|
||||
}
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Tastendruck beim Warten auf Zuweisung (RawInputListener)
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public void onKeyEvent(KeyInputEvent evt) {
|
||||
if (!evt.isPressed() || waitingRow < 0) return;
|
||||
|
||||
if (evt.getKeyCode() == KeyInput.KEY_ESCAPE) {
|
||||
// Zuweisung abbrechen, Maske offen lassen
|
||||
resetRowColor(waitingRow);
|
||||
waitingRow = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
Row r = rows.get(waitingRow);
|
||||
editCopy.set(r.field, evt.getKeyCode());
|
||||
r.keyText.setText(KeyNames.of(evt.getKeyCode()));
|
||||
resetRowColor(waitingRow);
|
||||
waitingRow = -1;
|
||||
}
|
||||
|
||||
private void resetRowColor(int idx) {
|
||||
rows.get(idx).bg.getMaterial().setColor("Color", COL_ROW);
|
||||
}
|
||||
|
||||
// RawInputListener-Pflichtmethoden
|
||||
@Override public void beginInput() {}
|
||||
@Override public void endInput() {}
|
||||
@Override public void onMouseMotionEvent(MouseMotionEvent evt) {}
|
||||
@Override public void onMouseButtonEvent(MouseButtonEvent evt) {}
|
||||
@Override public void onJoyAxisEvent(JoyAxisEvent evt) {}
|
||||
@Override public void onJoyButtonEvent(JoyButtonEvent evt) {}
|
||||
@Override public void onTouchEvent(TouchEvent evt) {}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Hilfsmethoden
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private Geometry addQuad(Node parent, float x, float y, float w, float h, ColorRGBA color, float z) {
|
||||
Geometry geo = new Geometry("q", new Quad(w, h));
|
||||
Material mat = new Material(app.getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md");
|
||||
mat.setColor("Color", color.clone());
|
||||
if (color.a < 1f) {
|
||||
mat.getAdditionalRenderState().setBlendMode(RenderState.BlendMode.Alpha);
|
||||
geo.setQueueBucket(RenderQueue.Bucket.Transparent);
|
||||
}
|
||||
geo.setMaterial(mat);
|
||||
geo.setLocalTranslation(x, y, z);
|
||||
parent.attachChild(geo);
|
||||
return geo;
|
||||
}
|
||||
|
||||
private BitmapText text(String content, int size, ColorRGBA color) {
|
||||
BitmapText t = new BitmapText(font, false);
|
||||
t.setSize(size);
|
||||
t.setColor(color);
|
||||
t.setText(content);
|
||||
return t;
|
||||
}
|
||||
|
||||
private void centerText(BitmapText t, float x, float y, float width) {
|
||||
t.setLocalTranslation(x + (width - t.getLineWidth()) / 2f, y, 1);
|
||||
}
|
||||
|
||||
private boolean hits(Vector2f p, float x, float y, float w, float h) {
|
||||
return p.x >= x && p.x <= x + w && p.y >= y && p.y <= y + h;
|
||||
}
|
||||
}
|
||||
@@ -1,90 +0,0 @@
|
||||
package de.blight.game.control;
|
||||
|
||||
import com.jme3.input.InputManager;
|
||||
import com.jme3.input.KeyInput;
|
||||
import com.jme3.input.MouseInput;
|
||||
import com.jme3.input.controls.*;
|
||||
import com.jme3.math.*;
|
||||
import com.jme3.renderer.Camera;
|
||||
import com.jme3.scene.Spatial;
|
||||
|
||||
/**
|
||||
* Bewegt einen Charakter relativ zur Kamera-Horizontal-Richtung
|
||||
* und dreht ihn in Bewegungsrichtung.
|
||||
*/
|
||||
public class CharacterControl {
|
||||
|
||||
private static final float MOVE_SPEED = 8f;
|
||||
private static final float ROTATE_SPEED = 5f;
|
||||
|
||||
private final InputManager inputManager;
|
||||
private final Camera cam;
|
||||
|
||||
private Spatial character;
|
||||
|
||||
// Eingabezustand
|
||||
private boolean forward, backward, left, right;
|
||||
|
||||
public CharacterControl(InputManager inputManager, Camera cam) {
|
||||
this.inputManager = inputManager;
|
||||
this.cam = cam;
|
||||
registerMappings();
|
||||
}
|
||||
|
||||
public void setCharacter(Spatial character) {
|
||||
this.character = character;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Eingabe-Registrierung
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
private void registerMappings() {
|
||||
inputManager.addMapping("Forward", new KeyTrigger(KeyInput.KEY_W), new KeyTrigger(KeyInput.KEY_UP));
|
||||
inputManager.addMapping("Backward", new KeyTrigger(KeyInput.KEY_S), new KeyTrigger(KeyInput.KEY_DOWN));
|
||||
inputManager.addMapping("Left", new KeyTrigger(KeyInput.KEY_A), new KeyTrigger(KeyInput.KEY_LEFT));
|
||||
inputManager.addMapping("Right", new KeyTrigger(KeyInput.KEY_D), new KeyTrigger(KeyInput.KEY_RIGHT));
|
||||
|
||||
ActionListener listener = (name, isPressed, tpf) -> {
|
||||
switch (name) {
|
||||
case "Forward" -> forward = isPressed;
|
||||
case "Backward" -> backward = isPressed;
|
||||
case "Left" -> left = isPressed;
|
||||
case "Right" -> right = isPressed;
|
||||
}
|
||||
};
|
||||
|
||||
inputManager.addListener(listener, "Forward", "Backward", "Left", "Right");
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// Update pro Frame
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
public void update(float tpf) {
|
||||
if (character == null) return;
|
||||
|
||||
// Kamerahorizontale Vorwärtsrichtung (Y ignorieren)
|
||||
Vector3f camDir = cam.getDirection().clone().setY(0).normalizeLocal();
|
||||
Vector3f camLeft = cam.getLeft().clone().setY(0).normalizeLocal();
|
||||
|
||||
Vector3f moveDir = Vector3f.ZERO.clone();
|
||||
if (forward) moveDir.addLocal(camDir);
|
||||
if (backward) moveDir.subtractLocal(camDir);
|
||||
if (left) moveDir.addLocal(camLeft);
|
||||
if (right) moveDir.subtractLocal(camLeft);
|
||||
|
||||
if (moveDir.lengthSquared() > 0.001f) {
|
||||
moveDir.normalizeLocal();
|
||||
character.move(moveDir.mult(MOVE_SPEED * tpf));
|
||||
|
||||
// Charakter zur Bewegungsrichtung drehen
|
||||
Quaternion targetRot = new Quaternion();
|
||||
targetRot.lookAt(moveDir, Vector3f.UNIT_Y);
|
||||
|
||||
Quaternion current = character.getLocalRotation();
|
||||
current.slerp(targetRot, ROTATE_SPEED * tpf);
|
||||
character.setLocalRotation(current);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package de.blight.game;
|
||||
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.system.AppSettings;
|
||||
import de.blight.game.scene.WorldScene;
|
||||
|
||||
public class BlightApp extends SimpleApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlightApp app = new BlightApp();
|
||||
|
||||
AppSettings settings = new AppSettings(true);
|
||||
settings.setTitle("Blight");
|
||||
settings.setResolution(1280, 720);
|
||||
settings.setSamples(4);
|
||||
|
||||
app.setSettings(settings);
|
||||
app.setShowSettings(true);
|
||||
app.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleInitApp() {
|
||||
// Standard-FlyCamera deaktivieren — wir steuern die Kamera selbst
|
||||
flyCam.setEnabled(false);
|
||||
|
||||
stateManager.attach(new WorldScene());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleUpdate(float tpf) {
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
rootProject.name = 'blight'
|
||||
@@ -1,26 +0,0 @@
|
||||
package de.blight.game;
|
||||
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.system.AppSettings;
|
||||
import de.blight.game.scene.WorldScene;
|
||||
|
||||
public class BlightApp extends SimpleApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlightApp app = new BlightApp();
|
||||
|
||||
app.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleInitApp() {
|
||||
// Standard-FlyCamera deaktivieren — wir steuern die Kamera selbst
|
||||
flyCam.setEnabled(false);
|
||||
|
||||
stateManager.attach(new WorldScene());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleUpdate(float tpf) {
|
||||
}
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package de.blight.game;
|
||||
|
||||
import com.jme3.app.SimpleApplication;
|
||||
import com.jme3.system.AppSettings;
|
||||
import de.blight.game.scene.WorldScene;
|
||||
|
||||
public class BlightApp extends SimpleApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlightApp app = new BlightApp();
|
||||
|
||||
AppSettings settings = new AppSettings(true);
|
||||
settings.setTitle("Blight");
|
||||
settings.setResolution(1280, 720);
|
||||
settings.setSamples(4);
|
||||
|
||||
app.setSettings(settings);
|
||||
app.setShowSettings(false);
|
||||
app.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleInitApp() {
|
||||
// Standard-FlyCamera deaktivieren — wir steuern die Kamera selbst
|
||||
flyCam.setEnabled(false);
|
||||
|
||||
stateManager.attach(new WorldScene());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void simpleUpdate(float tpf) {
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,30 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchHistory>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.debug">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.profile">
|
||||
<mruHistory/>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.eclemma.ui.launchGroup.coverage">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.ui.externaltools.launchGroup">
|
||||
<mruHistory/>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.run">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="blight-game - eclipse"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
</launchHistory>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchHistory>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.debug">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="EditorLauncher"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.profile">
|
||||
<mruHistory/>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.eclemma.ui.launchGroup.coverage">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="EditorLauncher"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.ui.externaltools.launchGroup">
|
||||
<mruHistory/>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
<launchGroup id="org.eclipse.debug.ui.launchGroup.run">
|
||||
<mruHistory>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="blight - cleanEclipse"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="blight - eclipse"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="EditorLauncher"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="BlightApp"/> "/>
|
||||
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="true" path="blight-editor - eclipse"/> "/>
|
||||
</mruHistory>
|
||||
<favorites/>
|
||||
</launchGroup>
|
||||
</launchHistory>
|
||||
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,58 +1,65 @@
|
||||
INDEX VERSION 1.134+/home/mario/Workspaces/blight/.metadata/.plugins/org.eclipse.jdt.core
|
||||
3190887717.index
|
||||
3965639856.index
|
||||
262304292.index
|
||||
3534421922.index
|
||||
1585095811.index
|
||||
16257995.index
|
||||
1350656539.index
|
||||
1136998059.index
|
||||
458837781.index
|
||||
860469874.index
|
||||
1305835383.index
|
||||
4153997317.index
|
||||
1550771283.index
|
||||
900586112.index
|
||||
3950534511.index
|
||||
1462452114.index
|
||||
3331268705.index
|
||||
1989349782.index
|
||||
2722916612.index
|
||||
1738064530.index
|
||||
1007707583.index
|
||||
2497820567.index
|
||||
734632761.index
|
||||
INDEX VERSION 1.134+C:\Projekte\blight\.metadata\.plugins\org.eclipse.jdt.core
|
||||
1730180473.index
|
||||
1560896368.index
|
||||
3434360348.index
|
||||
463881636.index
|
||||
2160052426.index
|
||||
2563355238.index
|
||||
280283746.index
|
||||
4260524346.index
|
||||
3103640776.index
|
||||
342961285.index
|
||||
1271954631.index
|
||||
2357666455.index
|
||||
52047090.index
|
||||
2034054389.index
|
||||
330211381.index
|
||||
2878081145.index
|
||||
842794024.index
|
||||
3981805811.index
|
||||
1210571632.index
|
||||
3496211806.index
|
||||
1110902487.index
|
||||
274839682.index
|
||||
563269584.index
|
||||
1307459789.index
|
||||
2565315493.index
|
||||
447892417.index
|
||||
746211526.index
|
||||
1734210249.index
|
||||
1531656712.index
|
||||
2352162652.index
|
||||
3278945159.index
|
||||
1724804096.index
|
||||
1680596161.index
|
||||
1660620864.index
|
||||
993751451.index
|
||||
55438146.index
|
||||
1228247778.index
|
||||
770656589.index
|
||||
1962463332.index
|
||||
3147751859.index
|
||||
1431966402.index
|
||||
2109219904.index
|
||||
1865797976.index
|
||||
3591837599.index
|
||||
2392911294.index
|
||||
1490162601.index
|
||||
1124510679.index
|
||||
3011908894.index
|
||||
2356684838.index
|
||||
3390708485.index
|
||||
436234689.index
|
||||
2865784985.index
|
||||
1545642898.index
|
||||
24151692.index
|
||||
1578672902.index
|
||||
2783277246.index
|
||||
606255621.index
|
||||
797385254.index
|
||||
3901683754.index
|
||||
2696219173.index
|
||||
2479985475.index
|
||||
4255926859.index
|
||||
1608883781.index
|
||||
890886771.index
|
||||
104128081.index
|
||||
1703316476.index
|
||||
3075372551.index
|
||||
3791361740.index
|
||||
1351491558.index
|
||||
1317406562.index
|
||||
3096076814.index
|
||||
1309346846.index
|
||||
3282007833.index
|
||||
3432172071.index
|
||||
2893713661.index
|
||||
3040618168.index
|
||||
1340110446.index
|
||||
2032725075.index
|
||||
2788838607.index
|
||||
4079747914.index
|
||||
3296889058.index
|
||||
633025986.index
|
||||
3697082729.index
|
||||
2913097348.index
|
||||
306663419.index
|
||||
404070292.index
|
||||
1839710279.index
|
||||
3002461991.index
|
||||
3721901883.index
|
||||
3822973035.index
|
||||
887038847.index
|
||||
2999631420.index
|
||||
2615701196.index
|
||||
2049044952.index
|
||||
3035175596.index
|
||||
1639262426.index
|
||||
13457938.index
|
||||
|
||||
Binary file not shown.
@@ -1,5 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<dirs>
|
||||
<entry loc="/usr/lib/jvm/java-21-openjdk-amd64" stamp="1774283020812"/>
|
||||
<entry loc="/home/mario/Programme/jdk-21" stamp="1774248849578"/>
|
||||
</dirs>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<dirs>
|
||||
<entry loc="C:\Users\mario\.p2\pool\plugins\org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.10.v20260205-0638" stamp="1773407513225"/>
|
||||
<entry loc="C:\Program Files\java" stamp="1778310877210"/>
|
||||
<entry loc="C:\Program Files\java\bin" stamp="1778310874823"/>
|
||||
<entry loc="/usr/lib/jvm/java-21-openjdk-amd64" stamp="1774283020812"/>
|
||||
<entry loc="/home/mario/Programme/jdk-21" stamp="1774248849578"/>
|
||||
</dirs>
|
||||
|
||||
@@ -1,5 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<libraryInfos>
|
||||
<libraryInfo home="/usr/lib/jvm/java-21-openjdk-amd64" version="21.0.10"/>
|
||||
<libraryInfo home="/home/mario/Programme/jdk-21" version="21.0.6"/>
|
||||
</libraryInfos>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<libraryInfos>
|
||||
<libraryInfo home="C:\Users\mario\.p2\pool\plugins\org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.10.v20260205-0638" version="21.0.10">
|
||||
<bootpath>
|
||||
<entry path="null"/>
|
||||
</bootpath>
|
||||
<extensionDirs>
|
||||
<entry path="null"/>
|
||||
</extensionDirs>
|
||||
<endorsedDirs>
|
||||
<entry path="null"/>
|
||||
</endorsedDirs>
|
||||
</libraryInfo>
|
||||
<libraryInfo home="C:\Program Files\java" version="26.0.1"/>
|
||||
<libraryInfo home="C:\Program Files\java\bin" version="26.0.1">
|
||||
<bootpath>
|
||||
<entry path="null"/>
|
||||
</bootpath>
|
||||
<extensionDirs>
|
||||
<entry path="null"/>
|
||||
</extensionDirs>
|
||||
<endorsedDirs>
|
||||
<entry path="null"/>
|
||||
</endorsedDirs>
|
||||
</libraryInfo>
|
||||
<libraryInfo home="/usr/lib/jvm/java-21-openjdk-amd64" version="21.0.10"/>
|
||||
<libraryInfo home="/home/mario/Programme/jdk-21" version="21.0.6"/>
|
||||
</libraryInfos>
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<typeInfoHistroy/>
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<typeInfoHistroy/>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user