mirror of
https://github.com/WtmcX/a1.0.6_03.git
synced 2025-06-05 14:30:56 -05:00
Make sound work
This commit is contained in:
parent
8df6b5d7b9
commit
a70b210871
14
.idea/workspace.xml
generated
14
.idea/workspace.xml
generated
@ -6,9 +6,13 @@
|
|||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="6bf56493-3337-4b11-98fb-a5d499cdbe34" name="Changes" comment="">
|
<list default="true" id="6bf56493-3337-4b11-98fb-a5d499cdbe34" name="Changes" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GameSettings.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GameSettings.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/javascript/EaglercraftX_1.8_Offline_International.html" beforeDir="false" afterPath="$PROJECT_DIR$/javascript/EaglercraftX_1.8_Offline_International.html" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GuiIngame.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GuiIngame.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/javascript/EaglercraftX_1.8_Offline_en_US.html" beforeDir="false" afterPath="$PROJECT_DIR$/javascript/EaglercraftX_1.8_Offline_en_US.html" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GuiOptions.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/net/minecraft/src/GuiOptions.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/javascript/assets.epk" beforeDir="false" afterPath="$PROJECT_DIR$/javascript/assets.epk" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/javascript/classes.js" beforeDir="false" afterPath="$PROJECT_DIR$/javascript/classes.js" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/javascript/classes.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/javascript/classes.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/main/java/net/minecraft/client/Minecraft.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/net/minecraft/client/Minecraft.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/main/java/net/minecraft/src/SoundManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/net/minecraft/src/SoundManager.java" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
@ -91,7 +95,7 @@
|
|||||||
<component name="PropertiesComponent"><![CDATA[{
|
<component name="PropertiesComponent"><![CDATA[{
|
||||||
"keyToString": {
|
"keyToString": {
|
||||||
"Application.LWJGLEntryPoint.executor": "Run",
|
"Application.LWJGLEntryPoint.executor": "Run",
|
||||||
"Application.MainClass.executor": "Debug",
|
"Application.MainClass.executor": "Run",
|
||||||
"Application.Unnamed.executor": "Run",
|
"Application.Unnamed.executor": "Run",
|
||||||
"Gradle.Alpha-1.1.2_01 [generateJavaScript].executor": "Run",
|
"Gradle.Alpha-1.1.2_01 [generateJavaScript].executor": "Run",
|
||||||
"Gradle.Alpha-1.1.2_01 [jar].executor": "Run",
|
"Gradle.Alpha-1.1.2_01 [jar].executor": "Run",
|
||||||
@ -123,7 +127,7 @@
|
|||||||
<recent name="net.lax1dude.eaglercraft" />
|
<recent name="net.lax1dude.eaglercraft" />
|
||||||
</key>
|
</key>
|
||||||
</component>
|
</component>
|
||||||
<component name="RunManager" selected="Gradle.Alpha-1.1.2_01 [generateJavaScript]">
|
<component name="RunManager" selected="Application.MainClass">
|
||||||
<configuration name="MainClass" type="Application" factoryName="Application" nameIsGenerated="true">
|
<configuration name="MainClass" type="Application" factoryName="Application" nameIsGenerated="true">
|
||||||
<option name="MAIN_CLASS_NAME" value="net.lax1dude.eaglercraft.internal.MainClass" />
|
<option name="MAIN_CLASS_NAME" value="net.lax1dude.eaglercraft.internal.MainClass" />
|
||||||
<module name="lwjgl" />
|
<module name="lwjgl" />
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
13382
javascript/classes.js
13382
javascript/classes.js
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
BIN
lwjgl-rundir/resources/sound/random/click.ogg
Normal file
BIN
lwjgl-rundir/resources/sound/random/click.ogg
Normal file
Binary file not shown.
@ -105,7 +105,7 @@ public class Minecraft implements Runnable {
|
|||||||
GL11.glMatrixMode(GL11.GL_MODELVIEW);
|
GL11.glMatrixMode(GL11.GL_MODELVIEW);
|
||||||
this.checkGLError("Startup");
|
this.checkGLError("Startup");
|
||||||
// this.glCapabilities = new OpenGlCapsChecker();
|
// this.glCapabilities = new OpenGlCapsChecker();
|
||||||
this.sndManager.loadSoundSettings(this.options);
|
this.sndManager.loadSoundSettings();
|
||||||
this.renderEngine.registerTextureFX(this.textureLavaFX);
|
this.renderEngine.registerTextureFX(this.textureLavaFX);
|
||||||
this.renderEngine.registerTextureFX(this.textureWaterFX);
|
this.renderEngine.registerTextureFX(this.textureWaterFX);
|
||||||
this.renderEngine.registerTextureFX(new TextureWaterFlowFX());
|
this.renderEngine.registerTextureFX(new TextureWaterFlowFX());
|
||||||
|
@ -14,7 +14,9 @@ import net.lax1dude.eaglercraft.internal.PlatformAudio;
|
|||||||
import net.peyton.eagler.minecraft.AudioUtils;
|
import net.peyton.eagler.minecraft.AudioUtils;
|
||||||
|
|
||||||
public class SoundManager {
|
public class SoundManager {
|
||||||
private GameSettings options;
|
private static final float DEFAULT_MUSIC_VOLUME = 0.7F;
|
||||||
|
private static final float DEFAULT_SOUND_VOLUME = 0.8F;
|
||||||
|
|
||||||
private Random rand = new Random();
|
private Random rand = new Random();
|
||||||
private int ticksBeforeMusic = this.rand.nextInt(12000);
|
private int ticksBeforeMusic = this.rand.nextInt(12000);
|
||||||
|
|
||||||
@ -25,33 +27,145 @@ public class SoundManager {
|
|||||||
|
|
||||||
private String[] newMusic = new String[]{"hal1.ogg", "hal2.ogg", "hal3.ogg", "hal4.ogg", "nuance1.ogg", "nuance2.ogg", "piano1.ogg", "piano2.ogg", "piano3.ogg"};
|
private String[] newMusic = new String[]{"hal1.ogg", "hal2.ogg", "hal3.ogg", "hal4.ogg", "nuance1.ogg", "nuance2.ogg", "piano1.ogg", "piano2.ogg", "piano3.ogg"};
|
||||||
|
|
||||||
public void loadSoundSettings(GameSettings var1) {
|
public void loadSoundSettings() {
|
||||||
this.options = var1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onSoundOptionsChanged() {
|
public void onSoundOptionsChanged() {
|
||||||
|
if(DEFAULT_MUSIC_VOLUME == 0.0F) {
|
||||||
|
if(this.musicHandle != null && !this.musicHandle.shouldFree()) {
|
||||||
|
musicHandle.end();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(this.musicHandle != null && !this.musicHandle.shouldFree()) {
|
||||||
|
musicHandle.gain(DEFAULT_MUSIC_VOLUME);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void closeMinecraft() {
|
public void closeMinecraft() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void playRandomMusicIfReady() {
|
public void playRandomMusicIfReady() {
|
||||||
|
if(DEFAULT_MUSIC_VOLUME != 0.0F) {
|
||||||
|
if(this.musicHandle == null || this.musicHandle.shouldFree()) {
|
||||||
|
if(this.ticksBeforeMusic > 0) {
|
||||||
|
--this.ticksBeforeMusic;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int var1 = rand.nextInt(newMusic.length);
|
||||||
|
this.ticksBeforeMusic = this.rand.nextInt(12000) + 12000;
|
||||||
|
String name = "/music/" + newMusic[var1];
|
||||||
|
|
||||||
|
IAudioResource trk;
|
||||||
|
if (!music.containsKey(name)) {
|
||||||
|
if (EagRuntime.getPlatformType() != EnumPlatformType.DESKTOP) {
|
||||||
|
trk = PlatformAudio.loadAudioDataNew(name, false, browserResourceLoader);
|
||||||
|
} else {
|
||||||
|
trk = PlatformAudio.loadAudioData(name, false);
|
||||||
|
}
|
||||||
|
if (trk != null) {
|
||||||
|
music.put(name, trk);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
trk = music.get(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
musicHandle = PlatformAudio.beginPlaybackStatic(trk, DEFAULT_MUSIC_VOLUME, 1.0f, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setListener(EntityLiving var1, float var2) {
|
public void setListener(EntityLiving var1, float var2) {
|
||||||
|
if (var1 != null && DEFAULT_SOUND_VOLUME != 0.0F) {
|
||||||
|
try {
|
||||||
|
float var9 = var1.prevRotationPitch + (var1.rotationPitch - var1.prevRotationPitch) * var2;
|
||||||
|
float var3 = var1.prevRotationYaw + (var1.rotationYaw - var1.prevRotationYaw) * var2;
|
||||||
|
double var4 = var1.prevPosX + (var1.posX - var1.prevPosX) * (double) var2;
|
||||||
|
double var6 = var1.prevPosY + (var1.posY - var1.prevPosY) * (double) var2;
|
||||||
|
double var8 = var1.prevPosZ + (var1.posZ - var1.prevPosZ) * (double) var2;
|
||||||
|
PlatformAudio.setListener((float) var4, (float) var6, (float) var8, (float) var9, (float) var3);
|
||||||
|
} catch (Exception e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void playSound(String var1, float var2, float var3, float var4, float var5, float var6) {
|
public void playSound(String var1, float var2, float var3, float var4, float var5, float var6) {
|
||||||
|
if(DEFAULT_SOUND_VOLUME != 0.0F) {
|
||||||
|
if(var5 > 0.0F) {
|
||||||
|
IAudioResource trk;
|
||||||
|
if(var1 == null) return;
|
||||||
|
|
||||||
|
var1 = var1.replace(".", "/");
|
||||||
|
|
||||||
|
int randNum = AudioUtils.getRandomSound(var1);
|
||||||
|
if(randNum == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String soundName = "/sound/" + var1 + (randNum != -1 ? randNum : "") + ".ogg";
|
||||||
|
if (!sounds.containsKey(soundName)) {
|
||||||
|
if (EagRuntime.getPlatformType() != EnumPlatformType.DESKTOP) {
|
||||||
|
trk = PlatformAudio.loadAudioDataNew(soundName, true, browserResourceLoader);
|
||||||
|
} else {
|
||||||
|
trk = PlatformAudio.loadAudioData(soundName, true);
|
||||||
|
}
|
||||||
|
if (trk != null) {
|
||||||
|
sounds.put(soundName, trk);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
trk = sounds.get(soundName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(trk != null) {
|
||||||
|
PlatformAudio.beginPlayback(trk, var2, var3, var4, var5 * DEFAULT_SOUND_VOLUME, var6, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void playSoundFX(String var1, float var2, float var3) {
|
public void playSoundFX(String var1, float var2, float var3) {
|
||||||
|
if(DEFAULT_SOUND_VOLUME != 0.0F) {
|
||||||
|
if(var2 > 1.0F) {
|
||||||
|
var2 = 1.0F;
|
||||||
|
}
|
||||||
|
var2 *= 0.25F;
|
||||||
|
|
||||||
|
IAudioResource trk;
|
||||||
|
if(var1 == null) return;
|
||||||
|
|
||||||
|
var1 = var1.replace(".", "/");
|
||||||
|
int randNum = AudioUtils.getRandomSound(var1 + ".ogg");
|
||||||
|
if(randNum == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String soundName = "/sound/" + var1 + (randNum != -1 ? randNum : "") + ".ogg";
|
||||||
|
if (!sounds.containsKey(soundName)) {
|
||||||
|
if (EagRuntime.getPlatformType() != EnumPlatformType.DESKTOP) {
|
||||||
|
trk = PlatformAudio.loadAudioDataNew(soundName, true, browserResourceLoader);
|
||||||
|
} else {
|
||||||
|
trk = PlatformAudio.loadAudioData(soundName, true);
|
||||||
|
}
|
||||||
|
if (trk != null) {
|
||||||
|
sounds.put(soundName, trk);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
trk = sounds.get(soundName);
|
||||||
|
}
|
||||||
|
if(trk != null) {
|
||||||
|
PlatformAudio.beginPlaybackStatic(trk, var2 * DEFAULT_SOUND_VOLUME, var3, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void playButtonClick() {
|
||||||
|
playSoundFX("random.click", 1.0f, 1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
private final IAudioCacheLoader browserResourceLoader = filename -> {
|
||||||
|
try {
|
||||||
|
return EaglerInputStream.inputStreamToBytesQuiet(EagRuntime.getRequiredResourceStream(filename));
|
||||||
|
} catch (Throwable t) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user