微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

向事件中添加声音效果java.applet.AudioClip

如何解决向事件中添加声音效果java.applet.AudioClip

按照Java游戏编程书籍(制作Space Invaders克隆)中的教程进行操作-并尝试添加更多功能...目前没有声音,我正尝试添加一些效果(从以前的教程-但在实现它们时遇到了麻烦。

这是我的“资源”类,用于设置要使用的文件

package com.n8skow.game.main;

import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.image.BufferedImage;
import java.net.URL;

import javax.imageio.ImageIO;

public class Resources {
    public static BufferedImage iconimage;
    public static AudioClip hit,fire;

    public static void load() {
        iconimage = loadImage("graphics/iconimage.png");
        hit = loadSound("sounds/hit.wav");
        fire = loadSound("sounds/fire.wav");
    }

    public static AudioClip loadSound(String filename) {
        URL fileURL = null;
        try {
            fileURL = Resources.class.getResource("/" + filename);
            return Applet.newAudioClip(fileURL);
        } catch (Exception e) {
            System.out.println("Error while reading sound file: " + filename);
            e.printstacktrace();
        }
        return null;
    }

    private static BufferedImage loadImage(String filename) {
        BufferedImage img = null;
        try {
            img = ImageIO.read(Resources.class.getResource("/" + filename));
        } catch (Exception e) {
            System.out.println("Error while reading image file: " + filename);
            e.printstacktrace();
        }
        return img;
    }
}

这是我主要游戏代码中的部分,在该部分中,我试图在射击时播放声音效果

lastFire = System.currentTimeMillis();
ShotEntity shot = new ShotEntity(this,"graphics/shot.gif",ship.getX()+10,ship.getY()-30);
entities.add(shot);
Resources.fire.play();

在通过消息调用声音文件时崩溃:

任务:lib:Game.main() 线程“主”中的异常java.lang.NullPointerException

不确定如何使Android Studio提供更多有用的信息...

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。