void OnClickItem(AnturaSpaceItemButton _bt) { var scene = AnturaSpaceScene.I as AnturaSpaceScene; if (scene.TutorialMode && scene.tutorialManager.CurrentTutorialFocus != _bt) { return; } SelectReward(_bt.Data); RewardBase rewardBase = _bt.Data.data; if (rewardBase != null && onRewardSelectedInCustomization != null) { onRewardSelectedInCustomization(rewardBase.ID); } RewardProp rewardProp = rewardBase as RewardProp; if (rewardProp != null && (rewardProp.Category == "EAR_R" || rewardProp.Category == "EAR_L") && onRewardCategorySelectedInCustomization != null) { onRewardCategorySelectedInCustomization(rewardProp.Category); } }
/// <summary> /// Loads the reward on model. /// </summary> /// <param name="rewardPackUnlockData">The identifier.</param> /// <returns></returns> private GameObject LoadRewardPropOnAntura(RewardPack rewardPack) { RewardProp prop = rewardPack.RewardBase as RewardProp; if (prop == null) { Debug.LogFormat("Prop {0} not found!", rewardPack.BaseId); return(null); } // Check if we already loaded a reward of this category LoadedModel loadedModel = LoadedModels.Find(lm => lm.RewardPack.Category == prop.Category); if (loadedModel != null) { Destroy(loadedModel.GO); LoadedModels.Remove(loadedModel); } // Load Model string boneParent = prop.BoneAttach; GameObject rewardModel = null; switch (boneParent) { case "dog_head": rewardModel = ModelsManager.MountModel(prop.ID, Dog_head); break; case "dog_spine01": rewardModel = ModelsManager.MountModel(prop.ID, Dog_spine01); break; case "dog_jaw": rewardModel = ModelsManager.MountModel(prop.ID, Dog_jaw); break; case "dog_Tail4": rewardModel = ModelsManager.MountModel(prop.ID, Dog_Tail3); break; case "dog_R_ear04": rewardModel = ModelsManager.MountModel(prop.ID, Dog_R_ear04); break; case "dog_L_ear04": rewardModel = ModelsManager.MountModel(prop.ID, Dog_L_ear04); break; } // Set materials ModelsManager.SwitchMaterial(rewardModel, rewardPack.GetMaterialPair()); // Save on LoadedModel List LoadedModels.Add(new LoadedModel() { RewardPack = rewardPack, GO = rewardModel }); return(rewardModel); }
/// <summary> /// Loads the reward on dog. /// </summary> /// <param name="_name">The name.</param> void LoadRewardOnDog(string _name) { actualReward = null; //actualReward = RewardSystemManager.GetConfig().Rewards.Find(r => r.RewardName == _name); //actualRewardGO = AnturaModelManager.Instance.LoadRewardOnAntura(actualReward.ID); //foreach (var color in actualRewardGO.GetComponentsInChildren<MeshRenderer>()) { // if (color.name == "color_1") { // color.materials = new Material[] { MaterialManager.LoadMaterial(material1, (PaletteType)Enum.Parse(typeof(PaletteType), actualReward.Material1)) }; // } else if (color.name == "color_2") { // color.materials = new Material[] { MaterialManager.LoadMaterial(material2, (PaletteType)Enum.Parse(typeof(PaletteType), actualReward.Material2)) }; // } //} }
void LoadRewardsList(string _position = "") { ClearList(); IEnumerable <RewardBase> rewardBases; var allPropBases = AppManager.I.RewardSystemManager.GetRewardBasesOfType(RewardBaseType.Prop); if (_position != "") { rewardBases = allPropBases.Where(r => (r as RewardProp).BoneAttach == _position); } else { rewardBases = allPropBases; } foreach (RewardBase rewardBase in rewardBases) { RewardProp rewardProp = rewardBase as RewardProp; Button b = Instantiate <Button>(ElementPrefab.GetComponent <Button>()); b.transform.SetParent(ElementContainer.transform); b.GetComponentInChildren <Text>().text = rewardProp.RewardName; b.onClick.AddListener(delegate { OnClickButton(b.GetComponentInChildren <Text>().text); }); } }