- Home /
Inherited class, trying to overwrite variable.
So I have two classes. In one, any Motor variable can be used, but in the latter one, I only want CharacterMotors on that variable. Yes, while in the Setter, I could simply limit it only to allowing CharacterMotors, but I have to rely on references to the CharacterMotor class.
I keep getting "The type CharacterMotor' conflicts with the imported type CharacterMotor'. Ignoring the imported type definition.", and whenever I try to reference the CharacterMotor, I get an errors about the object not being set to an instance of the object.
How can I override the main class's _motor with my new _motor?
 public class MotorState : MonoBehaviour {
 
 [SerializeField]
 protected Motor _motor;
 public Motor motor {
     get { return _motor; }
     set { _motor = value; }
 }
 
}
public class BasicCharacterMotion : MotorState {
 protected new CharacterMotor _motor;
 public new CharacterMotor motor {
     get { return _motor; }
     set { _motor = value; }
 }
 
}
Have you tried using 'override' to declare your property rather than 'new'? This question is probably out of my league, but this article seems like it could be helpful:
http://msdn.microsoft.com/en-us/library/ms173153%28v=vs.80%29.aspx
Your answer
 
 
             Follow this Question
Related Questions
Can I call a class's method which inherit monobehaviour by a normal class? 0 Answers
C# Conception - Hide inherited members and functions 1 Answer
C# Question - Do I Have to inherit from MonoBehaviour? What happens if I don't? 2 Answers
Overriding an inherited Enum? 1 Answer
C# Inheritance, base class attributes, override and null object 1 Answer
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                