void initSkill() { //Stretch skill selected float ratio = GameSupportor.getRatioAspect(PlayDragonInfoController.Instance.tempSkill, PlayDragonInfoController.Instance.renderUlti) * 100; PlayDragonInfoController.Instance.renderUlti.transform.localScale = new Vector3(ratio, ratio, ratio); bool hasUlti = false; string branch = PlayerInfo.Instance.dragonInfo.id; int length = PlayDragonInfoController.Instance.Skills.Length; int count = ReadDatabase.Instance.DragonInfo.Player[branch].Skills.Count - 1; if (ReadDatabase.Instance.DragonInfo.Player[branch].Skills.Count > 0) { for (int i = 0; i < length; i++) { PlayDragonInfoController.Instance.Skills[i].gameObject.SetActive(true); } foreach (DragonPlayerSkillData skillData in ReadDatabase.Instance.DragonInfo.Player[branch].Skills) { PlayDragonInfoSkillController skill = PlayDragonInfoController.Instance.Skills[count].GetComponent <PlayDragonInfoSkillController>(); SkillData data = ReadDatabase.Instance.SkillInfo[skillData.ID.ToUpper()]; skill.ID = skillData.ID; skill.CooldownTime = data.Cooldown; skill.Type = data.Type; skill.Ability = data.Ability; skill.ManaValue = data.Mana; skill.initalize(); string path = "Image/Dragon/Player/" + ConvertSupportor.convertUpperFirstChar(branch) + "/Skill/" + skillData.ID; skill.sprite.mainTexture = Resources.Load <Texture>(path); count--; if (skillData.Ulti) { PlayDragonInfoController.Instance.renderUlti.gameObject.SetActive(true); UIAnchor anchor = PlayDragonInfoController.Instance.renderUlti.GetComponent <UIAnchor>(); anchor.container = skill.gameObject; anchor.enabled = true; hasUlti = true; } } } if (hasUlti == false && PlayDragonInfoController.Instance.renderUlti.gameObject.activeSelf) { PlayDragonInfoController.Instance.renderUlti.gameObject.SetActive(false); } count = ReadDatabase.Instance.DragonInfo.Player[branch].Skills.Count; if (count < length) { for (int i = count; i < length; i++) { PlayDragonInfoController.Instance.Skills[i].gameObject.SetActive(false); } } }
void OnClick() { if (type == ETargetType.NONE) { type = ETargetType.CHOOSSED; PlayManager.Instance.resetBuilding(); //// reset range tower PlayManager.Instance.resetRangeTower(); PlayManager.Instance.selectedTowerBuild.SetActive(false); PlayManager.Instance.objectBuild.Target = rootTower; PlayManager.Instance.resetUpgrade(); PlayManager.Instance.chooseTarget.transform.parent = transform; PlayManager.Instance.chooseTarget.transform.localScale = Vector3.one; PlayManager.Instance.chooseTarget.transform.localPosition = new Vector3(3.5f, -30, 0); PlayManager.Instance.chooseTarget.transform.GetChild(0).renderer.material.renderQueue = transform.GetChild(0).renderer.material.renderQueue - 1; PlayManager.Instance.chooseTarget.SetActive(true); if (SceneState.Instance.State == ESceneState.ADVENTURE) { if (PlayTouchManager.Instance.skillTarget != null) { if (PlayTouchManager.Instance.skillTarget != this.gameObject) { PlayDragonInfoSkillController temp = PlayTouchManager.Instance.skillTarget.GetComponent <PlayDragonInfoSkillController>(); temp.selected.GetComponent <TweenScale>().PlayReverse(); temp.selected.GetComponent <TweenAlpha>().PlayReverse(); temp.typeSprite.GetComponent <TweenPosition>().PlayReverse(); temp.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); temp.isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } } // set tutorial cho lan dau tien if (PlayerInfo.Instance.tutorialInfo.tutorial_build == 0 && WaveController.Instance.currentMap == 1 && SceneState.Instance.State == ESceneState.ADVENTURE) { PlayerInfo.Instance.tutorialInfo.tutorial_build = 1; PlayerInfo.Instance.tutorialInfo.Save(); PlayManager.Instance.tutorial.SetActive(true); UIButtonTutorialPlay.Instance.StartTutorialBuildTower(); } } }
void OnClick() { if (type == ETowerType.NONE && houseAction.isActivity) { PlayManager playManager = PlayManager.Instance; if (playManager.objectUpgrade.Tower != houseController.gameObject) { playManager.resetUpgrade(); } type = ETowerType.CHOOSED; panelTween.PlayForward(); playManager.tempInit.panelDragonInfo.GetComponent <TweenPosition>().PlayReverse(); playManager.objectUpgrade.Tower = houseController.gameObject; playManager.resetBuilding(); // set range for tower playManager.setRangeTower(0, this.gameObject); // get range of tower current playManager.towerInfoController.rangeCurrent = 0; try { DragonHouseData nextLV = ReadDatabase.Instance.DragonInfo.House[houseController.ID.Level + 1]; playManager.towerInfoController.setHouseInfo(houseController); playManager.towerInfoController.setNextHouseIcon(new STowerID(ETower.DRAGON, houseController.ID.Level + 1)); // get range of tower next level playManager.towerInfoController.rangeUpgrade = 0; } catch { playManager.towerInfoController.setHouseInfo(houseController); } // show tutorial upgrade neu lan dau tien su dung if (PlayerInfo.Instance.tutorialInfo.tutorial_upgrade == 0 && WaveController.Instance.currentMap == 1) { PlayerInfo.Instance.tutorialInfo.tutorial_upgrade = 1; PlayerInfo.Instance.tutorialInfo.Save(); playManager.tutorial.SetActive(true); UIButtonTutorialPlay.Instance.startTutorialUpgrade(); } if (SceneState.Instance.State == ESceneState.ADVENTURE) { if (PlayTouchManager.Instance.skillTarget != null) { if (PlayTouchManager.Instance.skillTarget != this.gameObject) { PlayDragonInfoSkillController temp = PlayTouchManager.Instance.skillTarget.GetComponent <PlayDragonInfoSkillController>(); temp.selected.GetComponent <TweenScale>().PlayReverse(); temp.selected.GetComponent <TweenAlpha>().PlayReverse(); temp.typeSprite.GetComponent <TweenPosition>().PlayReverse(); temp.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); temp.isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } } } }
void Update() { if (Input.GetMouseButtonDown(0) || (Input.touchCount > 0 && Input.touches[0].phase == TouchPhase.Began)) { if (dragonController.HP <= 0 || dragonController.isCopulate) { return; } if (dragonController.isSelected) { if (!UICamera.hoveredObject.name.Equals("Drag Camera")) { return; } if (PlayDragonManager.Instance.currentHouse != null) { PlayDragonManager.Instance.currentHouse.GetComponent <HouseController>().StateAction = EHouseStateAction.CLOSE; PlayDragonManager.Instance.currentHouse = null; } Vector3 touchPos = cameraRender.ScreenToWorldPoint(Input.mousePosition); GameObject f = Instantiate(PlayManager.Instance.modelPlay.Flag) as GameObject; f.transform.parent = PlayManager.Instance.Temp.Flag.transform; f.transform.localScale = Vector3.one; f.transform.position = touchPos; //set render queue f.transform.GetChild(0).GetChild(0).GetComponent <SpriteRenderer>().material.renderQueue = GameConfig.RenderQueueFlag; //stretch f.transform.GetChild(0).GetComponent <UIStretch>().container = PlayManager.Instance.tempInit.uiRoot; dragonController.StateAction = EDragonStateAction.MOVE; dragonController.stateMove.destPosition = touchPos; dragonController.stateMove.destFrag = f; dragonController.stateMove.Movement = EDragonMovement.MOVE_TOUCH; dragonController.StateOffense = EDragonStateOffense.NONE; dragonController.isSelected = false; EffectSupportor.Instance.fadeOutWithEvent(dragonController.selected.transform.GetChild(0).gameObject, ESpriteType.UI_SPRITE, 0.1f, new EventDelegate(unenableSelectedSprite)); if (dragonController.stateMove.preFrag == null) { dragonController.stateMove.preFrag = f; } //add to list frags.Add(f); if (touchPos.x < dragonController.transform.position.x) { dragonController.StateDirection = EDragonStateDirection.LEFT; } else if (touchPos.x > dragonController.transform.position.x) { dragonController.StateDirection = EDragonStateDirection.RIGHT; } } else { if (skillTarget != null) { PlayDragonInfoSkillController infoController = skillTarget.GetComponent <PlayDragonInfoSkillController>(); if (infoController.Type == ESkillType.TARGET) { if ((ESkillOffense)infoController.Ability == ESkillOffense.SINGLE) { if (UICamera.hoveredObject.tag.Equals(TagHashIDs.Enemy)) { if (PlayDragonManager.Instance.PlayerDragon.GetComponent <DragonController>().attribute.MP.Current >= infoController.ManaValue) { infoController.cooldown.gameObject.SetActive(true); infoController.cooldown.fillAmount = 1.0f; infoController.isEnable = false; infoController.StartCoroutine(infoController.runCooldown()); } //invi selected infoController.selected.GetComponent <TweenScale>().PlayReverse(); infoController.selected.GetComponent <TweenAlpha>().PlayReverse(); infoController.StartCoroutine(infoController.invisibleSelectedSkill()); infoController.typeSprite.GetComponent <TweenPosition>().PlayReverse(); infoController.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); Vector3 touchPos = cameraRender.ScreenToWorldPoint(Input.mousePosition); PlayDragonManager.Instance.initSkill(infoController.ID, infoController.ManaValue, infoController.Type, ESkillOffense.SINGLE, new object[] { UICamera.hoveredObject.gameObject }); setCurrentOffenseType(ESkillOffense.AOE); } } else { if (PlayDragonManager.Instance.PlayerDragon.GetComponent <DragonController>().attribute.MP.Current >= infoController.ManaValue) { infoController.cooldown.gameObject.SetActive(true); infoController.cooldown.fillAmount = 1.0f; infoController.isEnable = false; infoController.StartCoroutine(infoController.runCooldown()); } //invi selected infoController.selected.GetComponent <TweenScale>().PlayReverse(); infoController.selected.GetComponent <TweenAlpha>().PlayReverse(); infoController.StartCoroutine(infoController.invisibleSelectedSkill()); infoController.typeSprite.GetComponent <TweenPosition>().PlayReverse(); infoController.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); Vector3 touchPos = cameraRender.ScreenToWorldPoint(Input.mousePosition); PlayDragonManager.Instance.initSkill(infoController.ID, infoController.ManaValue, infoController.Type, ESkillOffense.AOE, new object[] { touchPos }); setCurrentOffenseType(ESkillOffense.AOE); } } } } } }
void OnClick() { if (isEnable) { if (Type == ESkillType.TARGET) { if (PlayTouchManager.Instance.skillTarget != null && PlayTouchManager.Instance.skillTarget != this.gameObject) { PlayDragonInfoSkillController temp = PlayTouchManager.Instance.skillTarget.GetComponent <PlayDragonInfoSkillController>(); temp.selected.GetComponent <TweenScale>().PlayReverse(); temp.selected.GetComponent <TweenAlpha>().PlayReverse(); temp.typeSprite.GetComponent <TweenPosition>().PlayReverse(); temp.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); temp.isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } if (isTap) { selected.GetComponent <TweenScale>().PlayReverse(); selected.GetComponent <TweenAlpha>().PlayReverse(); typeSprite.GetComponent <TweenPosition>().PlayReverse(); typeSprite.GetComponent <TweenAlpha>().PlayReverse(); isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } else { isTap = true; //--show selected sprite selected.SetActive(true); //-Anchor UIAnchor anchor = selected.GetComponent <UIAnchor>(); anchor.container = this.gameObject; anchor.enabled = true; //-Tween selected.GetComponent <TweenScale>().PlayForward(); selected.GetComponent <TweenAlpha>().PlayForward(); //--show type sprite typeSprite.gameObject.SetActive(true); typeSprite.GetComponent <TweenPosition>().PlayForward(); typeSprite.GetComponent <TweenAlpha>().PlayForward(); PlayTouchManager.Instance.skillTarget = this.gameObject; if ((ESkillOffense)Ability == ESkillOffense.SINGLE) { PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.SINGLE); } else { PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } } else // BUFF & GLOBAL { if (PlayTouchManager.Instance.skillTarget != null) { if (PlayTouchManager.Instance.skillTarget != this.gameObject) { PlayDragonInfoSkillController temp = PlayTouchManager.Instance.skillTarget.GetComponent <PlayDragonInfoSkillController>(); temp.selected.GetComponent <TweenScale>().PlayReverse(); temp.selected.GetComponent <TweenAlpha>().PlayReverse(); temp.typeSprite.GetComponent <TweenPosition>().PlayReverse(); temp.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); temp.isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } if (isTap) { selected.GetComponent <TweenScale>().PlayReverse(); selected.GetComponent <TweenAlpha>().PlayReverse(); typeSprite.GetComponent <TweenPosition>().PlayReverse(); typeSprite.GetComponent <TweenAlpha>().PlayReverse(); if (PlayDragonManager.Instance.PlayerDragon.GetComponent <DragonController>().attribute.MP.Current >= ManaValue) { cooldown.gameObject.SetActive(true); cooldown.fillAmount = 1.0f; isTap = false; isEnable = false; StartCoroutine(runCooldown()); } PlayDragonManager.Instance.initSkill(ID, ManaValue, Type, Ability, null); } else { isTap = true; //--show selected sprite selected.SetActive(true); //-Anchor UIAnchor anchor = selected.GetComponent <UIAnchor>(); anchor.container = this.gameObject; anchor.enabled = true; //-Tween selected.GetComponent <TweenScale>().PlayForward(); selected.GetComponent <TweenAlpha>().PlayForward(); //--show type sprite typeSprite.gameObject.SetActive(true); typeSprite.GetComponent <TweenPosition>().PlayForward(); typeSprite.GetComponent <TweenAlpha>().PlayForward(); PlayTouchManager.Instance.skillTarget = this.gameObject; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } } }
void OnClick() { if (type == ETowerType.NONE && towerAction.isActivity) { PlayManager playManager = PlayManager.Instance; if (playManager.objectUpgrade.Tower != towerController.gameObject) { playManager.resetUpgrade(); } type = ETowerType.CHOOSED; panelTween.PlayForward(); if (playManager.tempInit.panelDragonInfo != null) { playManager.tempInit.panelDragonInfo.GetComponent <TweenPosition>().PlayReverse(); } playManager.objectUpgrade.Tower = towerController.gameObject; playManager.resetBuilding(); // set range for tower playManager.setRangeTower(towerController.attribute.Range, this.gameObject); // get range of tower current playManager.towerInfoController.rangeCurrent = towerController.attribute.Range; if (towerController is TowerPassiveController) { TowerPassiveController towerPassiveController = (TowerPassiveController)towerController; TowerPassiveController nextLV = (TowerPassiveController)towerPassiveController.nextLevel; if (nextLV != null) { playManager.towerPassiveInfoController.setTowerInfo(towerPassiveController); playManager.towerPassiveInfoController.setNextTowerIcon(nextLV.ID); playManager.towerPassiveInfoController.setValueInfo(towerPassiveController.ID, towerPassiveController.passiveAttribute.Describe ); } else { playManager.towerPassiveInfoController.setTowerInfo(towerPassiveController); playManager.towerPassiveInfoController.setValueInfo(towerPassiveController.ID, towerPassiveController.passiveAttribute.Describe); } } else { TowerController nextLV = towerController.nextLevel; if (nextLV != null) { playManager.towerInfoController.setTowerInfo(towerController); playManager.towerInfoController.setNextTowerIcon(nextLV.ID); playManager.towerInfoController.setBulletInfo(towerController.ID, towerController.attackType.ToString(), towerController.bullet); // get range of tower next level playManager.towerInfoController.rangeUpgrade = nextLV.attribute.Range; } else { playManager.towerInfoController.setTowerInfo(towerController); playManager.towerInfoController.setBulletInfo(towerController.ID, towerController.attackType.ToString(), towerController.bullet); } } // show tutorial upgrade neu lan dau tien su dung if (PlayerInfo.Instance.tutorialInfo.tutorial_upgrade == 0 && WaveController.Instance.currentMap == 1 && SceneState.Instance.State == ESceneState.ADVENTURE) { PlayerInfo.Instance.tutorialInfo.tutorial_upgrade = 1; PlayerInfo.Instance.tutorialInfo.Save(); playManager.tutorial.SetActive(true); UIButtonTutorialPlay.Instance.startTutorialUpgrade(); } if (SceneState.Instance.State == ESceneState.ADVENTURE) { if (PlayTouchManager.Instance.skillTarget != null) { if (PlayTouchManager.Instance.skillTarget != this.gameObject) { PlayDragonInfoSkillController temp = PlayTouchManager.Instance.skillTarget.GetComponent <PlayDragonInfoSkillController>(); temp.selected.GetComponent <TweenScale>().PlayReverse(); temp.selected.GetComponent <TweenAlpha>().PlayReverse(); temp.typeSprite.GetComponent <TweenPosition>().PlayReverse(); temp.typeSprite.GetComponent <TweenAlpha>().PlayReverse(); temp.isTap = false; PlayTouchManager.Instance.skillTarget = null; PlayTouchManager.Instance.setCurrentOffenseType(ESkillOffense.AOE); } } } } }