Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Kary · Jun 17, 2015 at 01:30 AM · audiosourcesoundsselecting objects

Multiple audio sources on a game object, how to script to play sequentially?

User selects object with ray. Want object to give different sounds when selecting in timeframe.

Click once get noise1 Click twice (within 10sec) get noise2 Click three times (within 10 more sec) get noise3

otherwise get noise1

Any ideas on how to do this?

Current Script:

 public AudioSource[] sounds;
  public AudioSource noise1;
  public AudioSource noise2;
  public AudioSource noise3;
  
 void Start()
 
  sounds = GetComponents<AudioSource>();
  noise1 = sounds[0];
  noise2 = sounds[1];
  noise3 = sounds[2];
 
  \\ And then  to play:
 public override void Activate()
     {
         if (timer > 0f)
             return;
  noise1.Play();
  noise2.Play();
  noise3.Play();



Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by imp903 · Jun 17, 2015 at 02:21 AM

I'm not great with C# but I can describe how I would do it anyway and hopefully you can figure out how you would do that in C#, sorry I can't give anything beyond this. I would create a variable called timer like you did, and default it to zero. then every time the button was clicked I would set timer back equal to ten, but in the update function, I would make sure the timer counted down as long as the variable timer was greater than 0. I would then create a variable called timesClicked which would default to zero, but would add one to itself every time the button was clicked. At the end of my update function I would include that when timer

for the hell of it, here's a js script and maybe that helps anyway:

 var timer = 0;
 var timesClicked = 0;
 var AudioSource = GetComponent.<AudioSource>();
 var noise1 : AudioClip;
 var noise2 : AudioClip;
 var noise3 : AudioClip;
 
 function OnClick()
 {
     timer = 10;
     if (timesClicked ==0)
     {
         AudioSource.clip = noise1;
         AudioSource.Play();
         timesClicked ++;
     }
     if (timesClicked == 1)
     {
         AudioSource.clip = noise2;
         AudioSource.Play();
         timesClicked++;
     }
     if (timesClicked == 2)
     {
         AudioSource.clip = noise3;
         AudioSource.Play();
         timesClicked = 0;
     }
         
 }
 
 function Update()
 {
     if (timer>0)
     {
         //this line is flawed because Time.time accounts for frames so 10 is a fraction of a second here
         //some experimenting will find a proper timer value at the top
         timer -= Time.time;
     }
     if (timer <=0)
     {
         timesClicked = 0;
     }
 }

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Audio not coming out of speakers 1 Answer

Scroll rect sound problem 0 Answers

How can I start at a random point in an audio clip? 1 Answer

Several audiosources play at the same time 1 Answer

Question about audio (AudioSource). My ingame sound doesn't sound like the original audio file? 3 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges