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 Slat · Dec 12, 2010 at 05:36 PM · classturretstruct

Class or struct? for multiple turrets...?

I have this javascript controlling a turret in the scene.... the problem is that when I crete more than 1 turret... they behave oddly.... So I need to create a class or a struct to control these objects my problem is that I don+t know how to do this properly, I have seen the reference for classes but still..... can anyone give some pointers??

public var BulletSpeed : float = 1000; private var counter : int; public var bullet : Transform; public var sparkEmitter : ParticleEmitter; public var brightEmitter : ParticleEmitter; public var smokeEmitter : ParticleEmitter; public var bulletShellEmitter : ParticleEmitter; public var shotFireLight : Light; public var isFiring : boolean = false; private var lastShotTime : float; public static var weaponLocked : boolean = false;

function Start () { lastShotTime = Time.time; isFiring = true; }

function Update () { if(Input.GetMouseButton(0) && Time.time > lastShotTime){ lastShotTime = Time.time + 0.04; var t=gameObject.Find("ShotSound"); t.audio.Play(); t.audio.pitch=Time.timeScale; var bullit = Instantiate(bullet, GameObject.Find("BulletReference").transform.position, Quaternion.identity); bullit.transform.Rotate(90,90,-30); bullit.GameObject.tag = "BulletProjectile"; bullit.rigidbody.AddForce(GameObject.Find("BulletReference").transform.forward * (BulletSpeed)); if(shotFireLight) shotFireLight.enabled = true; if(sparkEmitter){ sparkEmitter.Emit(1); sparkEmitter.emit = true;

         }if(brightEmitter){
             brightEmitter.emit = true;
             brightEmitter.Emit(Random.Range(30,40));
         }if(smokeEmitter){
             smokeEmitter.emit = true;
             smokeEmitter.Emit(Random.Range(30,100));
         }if(bulletShellEmitter){
             bulletShellEmitter.emit = true;
             bulletShellEmitter.Emit(1);
         }
 }else{
     if(shotFireLight)
         shotFireLight.enabled = false;
      if(sparkEmitter)
         sparkEmitter.emit = false;
     if(brightEmitter)
         brightEmitter.emit = false;
     if(smokeEmitter)
         smokeEmitter.emit = false;
     if(bulletShellEmitter)
         bulletShellEmitter.emit = false;
 }

}

function OnMouseDown(){ isFiring=true;

}

function OnMouseUp(){ isFiring=false;

}

Comment
Add comment · Show 2
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 Statement · Dec 12, 2010 at 05:43 PM 0
Share

Fix your code formatting in your question. You have a bunch of codes that are in plain text and that is horrible to read.

avatar image Proclyon · Dec 12, 2010 at 07:21 PM 0
Share

Consider the class (being an object itself) as a turret object. An object can HAVE things (fields/properties) it can be built (Constructor) destroyed (Destructor), and most important of all it can DO things (Functions/$$anonymous$$ethods). If you sort those things in a script you have yourself a turret class design. When you have that done you, and only then, you should consider coding the class. Design A L W A Y S comes before coding.

0 Replies

· Add your reply
  • Sort: 

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

No one has followed this question yet.

Related Questions

Lists and Structs instead of Arrays? 4 Answers

[SOLVED]How do i make this dictionary survive recompiles? 1 Answer

Best way to calculate sum of custom object holding numbers and returning sum as that object instance 0 Answers

C# ArrayList access from other script 1 Answer

Returning a copy of a struct - c# 2 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