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 Sirmaiji · Sep 12, 2013 at 08:50 PM · animationtransformbulletshootcounter

Animation Play On Bullet Shot

Hi everyone! I tend to make "on bullet shot" animation playing dependency which means I need shooting animation being played EVERY TIME AND ONLY AFTER BULLET SHOOTS OUT. Here's my script:

private var _animation : Animation;

var Bullet : Transform;

var Speed = 500;

var spawnPoint : Transform;

var Counter = Time.deltaTime;

var RateOfFire = 0.250000;

var target : GameObject;

function Shoot() {

   yield WaitForSeconds(0.1);

   Counter += Time.deltaTime;
   if(RateOfFire<Counter){
   var shotRapid = Instantiate(Bullet, spawnPoint.transform.position,
   Quaternion.identity);
   shotRapid.rigidbody.AddForce(transform.forward * Speed);
   Counter=0;
   }
   if (Counter>=0){
   target.animation.CrossFade("shoot1",0.2);} 

 }







The problem here's that animation still can randomly be played before bullet gets out or after. I've also tried on speed dependency (if Speed >=0), but it doesn't work properly. I think I need to identify when bullet starts its' movement and tell animation "shoot1" to play after that. But how can I do this? Thanks in advance :)

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 ahmed.yahia · Sep 12, 2013 at 09:23 PM

i guess the problem at counter = 0;

 function Shoot() {
 
     yield WaitForSeconds(0.1);
      
     Counter += Time.deltaTime;
     if(RateOfFire<Counter){
     var shotRapid = Instantiate(Bullet, spawnPoint.transform.position,
     Quaternion.identity);
     shotRapid.rigidbody.AddForce(transform.forward * Speed);
     Counter=0;
     }
     if (Counter>=0){
     target.animation.CrossFade("shoot1",0.2);}
      
     }

try this function...

 function Shoot() {
 
     target.animation.CrossFade("shoot1",0.2);
 
     yield WaitForSeconds(0.1);
      
     Counter += Time.deltaTime;
     if(RateOfFire<Counter){
     var shotRapid = Instantiate(Bullet, spawnPoint.transform.position,
     Quaternion.identity);
     shotRapid.rigidbody.AddForce(transform.forward * Speed);
     Counter=0;
     }
     
      
     }
Comment
Add comment · Show 2 · 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
avatar image Sirmaiji · Sep 12, 2013 at 09:43 PM 0
Share

There is no sense in putting animation.CrossFade at the very beginning of Coroutine since I need animation being played ONLY AFTER BULLET SHOOTS OUT. Btw Counter is not the best idea here as for if statement to enable animation's playback. So I'm trying to find another way to achieve that result. Any ideas?

avatar image ahmed.yahia · Sep 12, 2013 at 10:09 PM 0
Share

try to increase 0 at

  if (Counter>=0){


to 1 or 2.

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

16 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Bullets will not fire forwards 1 Answer

Get animation work 1 Answer

How to Sync bullet spawn with shoot animation 0 Answers

Shooting & Animation Problem 1 Answer

NullReferenceException Transform.Find 1 Answer


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