sunaudiomanager.java

来自「本代码为java编写的泡泡龙游戏」· Java 代码 · 共 59 行

JAVA
59
字号

import sun.audio.*;

public class SunAudioManager
{
	private GameApplet gameApplet;	
	
	private AudioDataStream[] managedAudioDataStreams;
	
	
	public SunAudioManager(GameApplet gameApplet)
	{
		this.gameApplet = gameApplet;
	}
	
	private AudioDataStream loadAudioStream(String filename)
	{
		AudioDataStream ads = (AudioDataStream)gameApplet.getGameContext().getObject(filename);
		
		if (ads != null)
		{
			return ads;
		}
		
		try
		{
			AudioStream as = new AudioStream(gameApplet.getClass().getResourceAsStream(filename));
			
			ads = new AudioDataStream(as.getData());

			gameApplet.getGameContext().addObject(filename, ads);
		}
		catch(Exception e)
		{
			System.err.println("Audio File ["+filename+"] not found");
		}
		
		return ads;
	}
	
	public void loadAudio(String[] files)
	{
		managedAudioDataStreams = new AudioDataStream[files.length];
					
		for (int i=0 ; i<files.length ; i++)
		{
			managedAudioDataStreams[i] = loadAudioStream(files[i]);
		}	
	}
	
	public void playSound(int sound)
	{
		if (sound>=0 && sound<managedAudioDataStreams.length)
		{
			managedAudioDataStreams[sound].reset();
			AudioPlayer.player.start(managedAudioDataStreams[sound]);
		}		
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?