private void RecvGemSysTakeoffRes(short state, GemSysTakeoffRes msg = null) { if (state != 0) { StateManager.Instance.StateShow(state, 0); return; } if (msg != null) { this.equipSlots[msg.type - EquipLibType.ELT.Weapon, msg.hole - 1].typeId = 0; this.equipSlots[msg.type - EquipLibType.ELT.Weapon, msg.hole - 1].id = 0L; GemUI gemUI = UIManagerControl.Instance.GetUIIfExist("GemUI") as GemUI; if (gemUI != null) { gemUI.RefreshEquipSlot(msg.hole - 1, 0); } GemSingleUI gemSingleUI = UIManagerControl.Instance.GetUIIfExist("GemSingleUI") as GemSingleUI; if (gemSingleUI != null) { gemSingleUI.Show(false); } EventDispatcher.Broadcast(EventNames.EquipDetailedShouldCheckBadge); EventDispatcher.Broadcast <int>(EventNames.UpdateEquipPosGemData, (int)msg.type); this.CheckCanShowWearingGemPromoteWay(); } }
private void RecvGemSysEmbedRes(short state, GemSysEmbedRes msg = null) { if (state != 0) { StateManager.Instance.StateShow(state, 0); return; } if (msg != null) { EquipLibType.ELT type = msg.type; int hole = msg.hole; long newGemId = msg.newGemId; int newGemTypeId = msg.newGemTypeId; GemEmbedInfo gemEmbedInfo = this.equipSlots[type - EquipLibType.ELT.Weapon, hole - 1]; gemEmbedInfo.id = newGemId; gemEmbedInfo.typeId = newGemTypeId; GemUI gemUI = UIManagerControl.Instance.GetUIIfExist("GemUI") as GemUI; if (gemUI != null) { gemUI.RefreshEquipSlot(msg.hole - 1, newGemTypeId); } GemSelectUI gemSelectUI = UIManagerControl.Instance.GetUIIfExist("GemSelectUI") as GemSelectUI; if (gemSelectUI != null) { gemSelectUI.Show(false); } EventDispatcher.Broadcast <int>(EventNames.UpdateEquipPosGemData, (int)msg.type); EventDispatcher.Broadcast(EventNames.EquipDetailedShouldCheckBadge); this.CheckCanShowWearingGemPromoteWay(); } }
protected override void ReleaseSelf(bool calledDestroy) { if (SystemConfig.IsReleaseResourceOn && calledDestroy) { GemUI.instance = null; base.ReleaseSelf(true); } }
public void UpdateDisplay() { foreach (Transform child in transform) { Destroy(child.gameObject); } List <Gem> gems = inventory.GetAllGems(); int count = 0; int y = 0; int x = 0; foreach (Gem gem in gems) { //get RectTransform corners to start at the top left corner Vector3[] corner = new Vector3[4]; gameObject.transform.GetComponent <RectTransform>().GetWorldCorners(corner); Vector3 position = new Vector3(x, y, 0) + corner[1] + new Vector3(0.4f, -0.4f, 0); GameObject newGemSlot = Instantiate(gemSlotGameObject, position, Quaternion.identity, transform); GameObject gemGameObject = Resources.Load("Gems/" + gem.GetType()) as GameObject; GameObject newGem = Instantiate(gemGameObject, position, Quaternion.identity, transform); newGemSlot.GetComponent <GemSlot>().Gem = newGem.GetComponent <Gem>(); if (shopSystem) { GemUI gemUI = newGem.GetComponentInChildren <GemUI>(); gemUI.DisableDrag(); gemUI.GemSlot = newGemSlot.GetComponent <GemSlot>(); gemUI.GemSlot.FindShopSystem(); } count++; count %= 3; if (count == 0) { y -= heightOffset; x = 0; } else { x += widthOffset; } } }
public void StartRewardPhase() { gameObject.SetActive(true); Player.instance.Wallet.Earn(10); // a terme, remplacer le 10 par niveau.getRecompense() foreach (InventorySlot slot in rewardUnitSlots) { slot.PutInSlot(UnitGenerator.GenerateUnit(Unit.allyTag)); } foreach (GemSlot gemSlot in rewardGemSlots) { GameObject gem = Player.instance.Inventory.GenerateRandomGemGameObject(gemSlot.transform); gemSlot.Gem = gem.GetComponent <Gem>(); GemUI gemUI = gem.GetComponentInChildren <GemUI>(); gemUI.DisableDrag(); gemUI.GemSlot = gemSlot; } foreach (uint id in unitsInCombatIds) { Player.instance.Inventory.GetUnit(id).EarnExperience(1); } Player.instance.Inventory.inventoryUI.UpdateGUI(); }
void ShowGemLoot(GemUI gemUI, int collected, int max) { gemUI.text.transform.parent.gameObject.SetActive(true); gemUI.text.text = collected.ToString() + "/" + max.ToString(); float fraction = collected / (float)max; float experienceToGain; if (fraction < 1) { experienceToGain = fraction * 100; } else { experienceToGain = fraction * 200; gemUI.addedExperience.GetComponent <Text>().color = Color.green; } int exp = (int)experienceToGain; gemUI.addedExperience.text = "+" + exp.ToString() + "exp!"; Player.Instance.Attributes.AddExperience(exp); }
private void Awake() { GemUI.instance = this; base.AwakeBase(BindingContext.BindingContextMode.MonoBinding, false); }