add nn_Environment, nn_EnvironmentAction, nn_EnvironmentRequest cllasses...

This commit is contained in:
2026-06-04 12:19:29 -03:00
parent f7b7605408
commit f71c5493ed
5 changed files with 58 additions and 3 deletions

View File

@@ -0,0 +1,13 @@
package org.neoflock.NeoNucleus;
public class nn_Beep {
public final double frequency;
public final double duration;
public final double volume;
public nn_Beep(double frequency, double duration, double volume) {
this.frequency = frequency;
this.duration = duration;
this.volume = volume;
}
}

View File

@@ -1,6 +1,11 @@
package org.neoflock.NeoNucleus;
public class nn_Environment {
public String a;
// TODO
import java.util.function.Consumer;
// we're gonna start needing java-side userdatas soon....
public class nn_Environment extends PointerBackedClass {
public final Consumer<nn_EnvironmentRequest> handler;
private nn_Environment(Consumer<nn_EnvironmentRequest> handler) {
this.handler = handler;
}
}

View File

@@ -0,0 +1,10 @@
package org.neoflock.NeoNucleus;
public enum nn_EnvironmentAction {
NN_ENV_DRAWENERGY,
NN_ENV_POWERON,
NN_ENV_POWEROFF,
NN_ENV_CRASHED,
NN_ENV_BEEP,
NN_ENV_BEEPMORSE,
}

View File

@@ -0,0 +1,13 @@
package org.neoflock.NeoNucleus;
public final class nn_EnvironmentRequest {
public final nn_Computer computer;
public final nn_EnvironmentAction action;
private nn_EnvironmentRequest(nn_Computer computer, nn_EnvironmentAction action) {
this.computer = computer;
this.action = action;
}
public native double getEnergy();
public native nn_Beep getBeep();
public native nn_MorseBeep getMorseBeep();
}

View File

@@ -0,0 +1,14 @@
package org.neoflock.NeoNucleus;
public class nn_MorseBeep {
public final String pattern;
public final double frequency;
public final double volume;
public nn_MorseBeep(String pattern, double frequency, double volume) {
this.pattern = pattern;
this.frequency = frequency;
this.volume = volume;
}
}