x


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 typeCharacterMotor'. 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; }
}

}

more ▼

asked Dec 14 '11 at 10:17 PM

Nemox gravatar image

Nemox
169 11 16 20

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

Dec 14 '11 at 10:33 PM Julien.Lynge
(comments are locked)
10|3000 characters needed characters left

0 answers: sort voted first
Be the first one to answer this question
toggle preview:

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

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x480
x339
x138
x133
x40

asked: Dec 14 '11 at 10:17 PM

Seen: 778 times

Last Updated: Dec 14 '11 at 10:33 PM