private void CheckTarget() { if (target == null) { KPrefabID instance = KPrefabIDTracker.Get().GetInstance(target_instance_id); if ((Object)instance != (Object)null) { target = instance.GetComponent <IAssignableIdentity>(); if (target != null) { MinionIdentity minionIdentity = target as MinionIdentity; if ((bool)minionIdentity) { minionIdentity.ValidateProxy(); } else { StoredMinionIdentity storedMinionIdentity = target as StoredMinionIdentity; if ((bool)storedMinionIdentity) { storedMinionIdentity.ValidateProxy(); } } } } } }
protected override void OnSpawn() { base.OnSpawn(); UpdateTint(); UpdateStatusString(); base.OnAssign += OnNewAssignment; if (assignee == null) { MinionStorage component = GetComponent <MinionStorage>(); if ((bool)component) { List <MinionStorage.Info> storedMinionInfo = component.GetStoredMinionInfo(); if (storedMinionInfo.Count > 0) { MinionStorage.Info info = storedMinionInfo[0]; Ref <KPrefabID> serializedMinion = info.serializedMinion; if (serializedMinion != null && serializedMinion.GetId() != -1) { KPrefabID kPrefabID = serializedMinion.Get(); StoredMinionIdentity component2 = kPrefabID.GetComponent <StoredMinionIdentity>(); component2.ValidateProxy(); Assign(component2); } } } } }