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 Syrious · Oct 17, 2014 at 10:04 AM · inheritanceinterfaceabstract

How to use of interfaces and inheritance if you have seperated scripts?

How to use of interfaces and inheritance if you have seperated scripts attached to a gameobject?

Don't get me wrong. I understand the normal use of inheritance and interfaces but there is one thing that bothers me,. Since you split up your scripts and add those seperatly to your gameobject, i dont get the use of interfaces and inheritance in unity. For example:

Let's say I have an object ufo that can be controlled and is damageble. Normaly you could implement an interface IDamageble and IControllable if all functionality would be in the class ufo, but actually - to make things nice and clear - I add one script calles damage and another calles controller. There is no base-script for ufo where you could implement those interfaces. Furthermore: even if I would have a base script which implements the interface IControllable (which needs the function input()) I would implement the methode input() in the base script and just toss the call to the controller script.

So whats the propper use of interfaces in that case?

The same with inheritance or abstract. Is it useful to let ufo inherit from a class like SpaceShip? Since I splitted up every functional script like moving, shooting, getting damage how to use inheritance in that case?

For me it looks a bit like either you can have one class-script which inherits and implements other stuff or you have seperate scripts added to the game object via inspector.

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

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

2 People are following this question.

avatar image avatar image

Related Questions

Accessing interface in a derived class through the parent class 0 Answers

C# inheritance advice 2 Answers

Class derivation problem 1 Answer

Need to inherit from EventArgs AND ScriptableObject 1 Answer

How to make a List that can store anything that implements an interface? 4 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