4

每当触摸屏幕时,我都会尝试为游戏添加声音效果。我已经有一个可以移动角色的 touchesBegan 方法,我可以输入:

[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO];

进入那个方法还是我需要做一个新的方法。另外,我应该在我的项目中将声音文件存储在哪里?它是否有特定的位置,或者它可以在任何地方?

4

3 回答 3

8

试试这个:

确保首先你已经放 self.userInteractionEnabled = YES;

在屏幕上单击时触摸委托方法:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
      // For play your wav file here
      [self runAction:[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO]];

      // if you want do with touches point do here 
      for (UITouch *touch in touches) {
        CGPoint touchLocation = [touch locationInNode:self];
        //do your stuff here
      }
}

我应该在我的项目中将声音文件存储在哪里?

  • 你必须把它放在你的应用程序文件目录中,意思是资源文件夹。
于 2014-02-27T06:42:17.060 回答
6

就放

[self runAction:[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO]];

线入touchesBegan方法。

您可以将音频文件放在项目中的任何位置。

于 2014-02-27T05:46:38.103 回答
1

您的代码有效。对于文件,您可以将其放在项目中的任何位置。
你甚至可以创建一个像“sfx”之类的新文件夹,之后你不需要担心它的路径(你不必把文件夹放在路径中,如果你把你的“sfx.wav”放在sfx文件夹,你不需要像“sfx/sfx.wav”那样加载它)呵呵,这就是我上次做的。只是一个抬头。顺便说一句,您确实需要包含 .wav 祝您好运

于 2014-03-08T13:06:00.723 回答