• 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 /
This question was closed Aug 24, 2013 at 03:24 AM by DeadKenny for the following reason:

Other

avatar image
Question by DeadKenny · Aug 24, 2013 at 02:39 AM · c#aishootingdistancecalculation

Distance before shooting issue.

I can't get the AI to shoot at the correct range which is referenced from another script called RifleAI.

Well it works almost perfect if I type in a number but not if I put in the float range.

Let me explain in Code:

// This is where the range is referenced from aka the rifle script.

 private Rifle weaponRifleScript;
 
 
 void Update(){
 
    if(canShoot == true){
 
       Shooting();
 
      }else{
 
       canShoot = false;
 
 }
 }
 
 
 void Shooting(){
 
   targetDistance = Vector3.Distance(player.position, target.position);
 
   // this is where it gets the range from the rifle script.
   float range = weaponRifleScript.range;
    
   if(targetDistance < range){
 
     weaponRifleScript.InvokingRepeating("Shoot", 0.5f, 20);
 
 }
 }

So yeah, its simply not working, either it shoots from what ever range or does not shoot at all.

Heeeelp....

Comment

People who like this

0 Show 0
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

  • Sort: 
avatar image

Answer by getyour411 · Aug 24, 2013 at 02:51 AM

Take a look at this

http://docs.unity3d.com/Documentation/ScriptReference/MonoBehaviour.InvokeRepeating.html

One issue seems to be your methodname in InvokeRepeating is "Shoot" but you named it "Shooting". Also, you calculate targetDirection but then on 25 refer to targetDistance.

Comment

People who like this

0 Show 5 · 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 DeadKenny · Aug 24, 2013 at 03:01 AM 0
Share

Woops that was typo.... I work on another computer.

avatar image DeadKenny · Aug 24, 2013 at 03:05 AM 0
Share

Its invoking the shoot from another script, IE the weapon.

Shooting() is from this specific script.

Shoot() pretty much just instantiates the bullets with delay. From the other script.

avatar image getyour411 · Aug 24, 2013 at 03:11 AM 0
Share

Did the targetDist v. targetDir fix it?

avatar image DeadKenny · Aug 24, 2013 at 03:19 AM 0
Share

Nope that was just typo.

Its got something to do with the range for sure.

avatar image DeadKenny · Aug 24, 2013 at 03:23 AM 0
Share

Oh wait I think I fixed it...

It was because I was a noob and I didn't check the ranges properly.

100 was what the range float was, which was further than I thought it was in game.

I'm not too sure though lol, its late and life is a blur.

Thanks though for feedback and link.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

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

[I REALLY NEED HELP FAST]Help with enemy Shooting 1 Answer

Distribute terrain in zones 3 Answers

Invoke shoot delay problem. 3 Answers

Finding a the closest distance between a Ai and multipel enemys 2 Answers

,Enemy AI rapidfires and invokerepeating doesn't do anything. c# 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