- Home /
Question by
Darkhalo45 · Nov 22, 2017 at 09:45 PM ·
animatoranimator controllerequip
RuntimeAnimatorController becomes null for no reason
I am trying to make an Equip weapon system, but whenever I Instantiate my weapon, the runtimeAnimatorController becomes null.
void Update() {
for (int key = 0; key < slotAmount; key++) {
int keyName = key + 1;
if (Input.GetKeyDown(keyName.ToString()) && equippedSlot != key) {
invController.AddInventoryItem (PlayerController.Instance.itemDatabase.Item (0), 1);
equipmentSlots [0 ].InvItem = invController.GetInventoryItem (0);
EquipWeapon (equipmentSlots[key], key);
} else if (Input.GetKeyDown(keyName.ToString()) && equippedSlot == key) {
DequipWeapon (equipmentSlots[key], key);
}
}
}
void EquipWeapon(EquipmentSlot slot, int index) {
if (slot.InvItem != null) {
Item item = slot.InvItem.Item;
GameObject weapon = item.Prefab;
GameObject newWeapon = Instantiate (weapon, playerHandle) as GameObject;
slot.WeaponObject = newWeapon;
newWeapon.transform.localPosition = new Vector3 (0f, 0f, 0f);
newWeapon.transform.localRotation = Quaternion.Euler (0f, 180f, 0f);
rightArmAnimator.runtimeAnimatorController = item.AnimOverride;
equippedSlot = index;
}
}
And then after I equip the weapon, the runtimeAnimatorController becomes null:
screenshot-202.png
(39.4 kB)
screenshot-201.png
(30.9 kB)
Comment
Your answer
Follow this Question
Related Questions
How does one make use of Animator.StartPlayback()? 1 Answer
Lots of errors using speed multiplier in animation (2D). 0 Answers
Animating multiple platforms with the same Animator? 0 Answers
Animator parameter does not pick the value of the animation curve with the same name 2 Answers
Attempting to change AnimatorController during Runtime 0 Answers