private void Dead() { InitJungleStatus(); if (monAtk == null) { monAtk = transform.GetComponentInChildren <MonsterAtk>(); } if (TheAIDest == null) { TheAIDest = gameObject.GetComponent <AIDestinationSetter>(); } if (TheAIPath == null) { TheAIPath = gameObject.GetComponent <AIPath>(); } monAtk.TheAIPath = null; monAtk.nowTarget = null; monAtk.StopAllCoroutines(); TheAIPath.canMove = true; TheAIPath.canSearch = true; gameObject.GetComponent <AIDestinationSetter>().target = null; myCenter.StartCoroutine("Respawn"); TheAIDest.target = myCenter.transform; monAtk.nowTarget = null; gameObject.SetActive(false); // 죽을때 마우스바뀐상태면 원래대로 if (mouseChanged) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); } }
private void Dead() { //ingameManager.minionDeadCount += 1; InitMinionStatus(); minHP.InitProgressBar(); if (minAtk == null) { minAtk = transform.GetComponentInChildren <MinionAtk>(); } if (TheAIDest == null) { TheAIDest = gameObject.GetComponent <AIDestinationSetter>(); } if (TheAIPath == null) { TheAIPath = gameObject.GetComponent <AIPath>(); } minAtk.TheAIPath = null; minAtk.MoveTarget = null; minAtk.nowTarget = null; minAtk.StopAllCoroutines(); TheAIPath.canMove = true; TheAIPath.canSearch = true; gameObject.SetActive(false); gameObject.GetComponent <AIDestinationSetter>().target = null; // 죽을때 마우스바뀐상태면 원래대로 if (mouseChanged) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); } //gameObject.transform.position = deadVec + deadOffsetVec; }
private void OnMouseOver() { if (Team.ToString().ToLower().Equals(PhotonNetwork.player.GetTeam().ToString().ToLower())) { cursor.SetCursor(1, Vector2.zero); } else if (!Team.ToString().ToLower().Equals(PhotonNetwork.player.GetTeam().ToString().ToLower())) { cursor.SetCursor(2, Vector2.zero); } }
private void Dead() { InitTowerStatus(); if (myTowerAtk == null) { myTowerAtk = transform.GetComponentInChildren <TowerAtk>(); } myTowerAtk.StopAllCoroutines(); myTowerAtk.nowTarget = null; if (PhotonNetwork.isMasterClient) // 마스터가 한번만. { if (Team.ToLower().Equals("red")) // 타워가 레드팀이면 { sysmsg.Annoucement(8, false, "red"); // 파괴 sysmsg.Annoucement(9, false, "blue"); // 적 파괴 } else if (Team.ToLower().Equals("blue")) { sysmsg.Annoucement(8, false, "blue"); sysmsg.Annoucement(9, false, "red"); } } if (myNextTower != null) { myNextTower.isCanAtkMe = true; } else if (myNextSup != null) { if (myNextSup.tag.Equals("Nexus")) { myNextSup.nexusAtkNum += 10; if (myNextSup.nexusAtkNum >= 21) { myNextSup.isCanAtkMe = true; } } else { myNextSup.isCanAtkMe = true; } } TowerDestroyEffect.SetActive(true); DestroyEffect.Play(); toweraudio.PlayOneShot(SoundManager.instance.Building_Destroy); gameObject.SetActive(false); // 죽을때 마우스바뀐상태면 원래대로 if (mouseChanged) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); } }
private void Dead() { if (icon != null) { icon.gameObject.SetActive(false); } ChampionSound.instance.IamDeadSound(myChampionData.ChampionName); // 죽은애가 나면 데스올려라, 그리고 죽는 더미 생성 InitChampionStatus(); ChampHP.InitProgressBar(); if (GetComponent <PhotonView>().owner.Equals(PhotonNetwork.player)) { myChampionData.death++; myChampionData.UIRightTop.AllUpdate(); string dummyName = gameObject.name.Split('_')[0]; // 더미생성 PhotonNetwork.Instantiate("Champion/" + dummyName + "Die", transform.position, transform.rotation, 0); reviveTime = (myChampionData.totalstat.Level - 1) * 2.0f + 10.0f; myChampionData.UIIcon.ReviveCoverImage.enabled = true; if (deadEffect == null) { deadEffect = Camera.main.GetComponentInChildren <DeadEffect>(); } deadEffect.TurnOn(); // 죽으면 상점 구매가능 PlayerData.Instance.purchaseState = true; // 내가가진 어시리스트애들한테 어시올려줌 assistRPC(); } myChampAtk.StopAllCoroutines(); myChampAtk.ResetTarget(); // 죽으면 기존에 액티브끄는 대신에 좌표를 옮겨버림. //gameObject.SetActive(false); transform.position = new Vector3(transform.position.x, -100, transform.position.z); // 죽을때 마우스바뀐상태면 원래대로 if (mouseChanged) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); } //var myAstarTarget = transform.parent.Find("PlayerA*Target"); //if (myAstarTarget != null) // myAstarTarget.localPosition = startPos; }
private void OnMouseOver() { if (!SceneManager.GetActiveScene().name.Equals("InGame")) { return; } if (team.ToLower().Equals(PhotonNetwork.player.GetTeam().ToString())) { if (photonView.isMine) { return; } cursor.SetCursor(1, Vector2.zero); isMouseChanged = true; } else { cursor.SetCursor(2, Vector2.zero); isMouseChanged = true; } }
//스킬 활성화 유무 체크 private void SmiteCheck() { if (isSmiteClick) { if (isIgniteClick || isTeleportClick || Input.GetMouseButton(1)) { cursor.SetCursor(0, Vector2.zero); isSmiteClick = false; splatmanager.Cancel(); return; } else if (Input.GetMouseButtonDown(0)) { splatmanager.Cancel(); isSmiteClick = false; Smite(); cursor.SetCursor(0, Vector2.zero); } } }
private void OnMouseOver() { cursor.SetCursor(2, Vector2.zero); isMouseChanged = true; }
//타겟팅 점화, 강타, private void Update() { if (isInGameScene) { if (chat.chatInput.IsActive()) { return; } if (isIgniteClick) { if (isSmiteClick || isTeleportClick || Input.GetMouseButton(1)) { cursor.SetCursor(0, Vector2.zero); isIgniteClick = false; splatmanager.Cancel(); return; } else if (Input.GetMouseButtonDown(0)) { splatmanager.Cancel(); isIgniteClick = false; Ignite(); cursor.SetCursor(0, Vector2.zero); } } if (isSmiteClick) { if (isIgniteClick || isTeleportClick || Input.GetMouseButton(1)) { cursor.SetCursor(0, Vector2.zero); isSmiteClick = false; splatmanager.Cancel(); return; } else if (Input.GetMouseButtonDown(0)) { splatmanager.Cancel(); isSmiteClick = false; Smite(); cursor.SetCursor(0, Vector2.zero); } } if (isTeleportClick) { if (isIgniteClick || isSmiteClick || Input.GetMouseButton(1)) { cursor.SetCursor(0, Vector2.zero); isTeleportClick = false; return; } else if (Input.GetMouseButtonDown(0)) { TeleportDestinationSet(); isTeleportClick = false; cursor.SetCursor(0, Vector2.zero); } } } if (isIgnite) { ImOnFire = true; IgnteTime += Time.deltaTime; if (IgnteTime >= 1.0f) { IgnteTime = 0; IgnteDam += Mathf.FloorToInt(55 + (25 * Attackerlevel)) / 5; if (mybehav.HitMe((float)Mathf.FloorToInt(55 + (25 * Attackerlevel)) / 5, "FD", IgniteAtker, IgniteAtker.gameObject.name)) { if (ImOnFire) { ImOnFire = false; IgnteTime = 0; IgnteDam = 0; ChampionData chdata = IgniteAtker.GetComponent <ChampionData>(); chdata.Kill_CS_Gold_Exp("", 0, this.transform.position); } } } if (IgnteDam >= Mathf.FloorToInt(55 + (25 * Attackerlevel))) { IgnteDam = 0; IgnteTime = 0; isIgnite = false; } } if (isTeleportDestSet)//목표 설정후에 { if (!Once) { curhp = ChampData.totalstat.Hp; Once = true; SendEffect("Teleport", Player.transform.position, team, photonview.viewID); Ping.GetFxPool("Going", TeleportDestPos, false); if (Target.GetComponent <PhotonView>() != null) { SendEffect("Teleport", Target.transform.position, team, photonview.viewID); } else { SendEffect("Teleport", Target.transform.position, team); } AIPath.isStopped = true; if (Target.transform.name.Contains("Minion")) { Target.GetComponent <Pathfinding.AIPath>().isStopped = true; } } TeleportTime -= Time.deltaTime; if (curhp > ChampData.totalstat.Hp) { if (fog.Count > 0) { for (int i = 0; i < fog.Count; i++) { fog[i].stopParticle(); } } fog.Clear(); cursor.SetCursor(cursor.PreCursor, Vector2.zero); isTeleportDestSet = false; TeleportTime = 4.5f; Once = false; cam.ResetTarget(); AIPath.isStopped = false; if (Target.transform.name.Contains("Minion")) { Target.GetComponent <Pathfinding.AIPath>().isStopped = false; } return; } else if (Input.GetKeyDown(KeyCode.D)) { if (fog.Count > 0) { for (int i = 0; i < fog.Count; i++) { fog[i].stopParticle(); } } fog.Clear(); cursor.SetCursor(cursor.PreCursor, Vector2.zero); if (Spell_D == 6) { ChampData.current_Cooldown_D = 1; } else if (Spell_F == 6) { ChampData.current_Cooldown_F = 1; } isTeleportDestSet = false; TeleportTime = 4.5f; Once = false; cam.ResetTarget(); cursor.SetCursor(0, Vector3.zero); AIPath.isStopped = false; if (Target.transform.name.Contains("Minion")) { Target.GetComponent <Pathfinding.AIPath>().isStopped = false; } return; } else if (TeleportTime <= 0) { cam.SetTarget(Player.transform); TeleportTime = 4.5f; TeleportDestPos.y = Player.transform.position.y; Player.transform.position = TeleportDestPos; //AstarTarget.transform.position = Player.transform.position; isTeleportDestSet = false; Once = false; Invoke("TeleportEnd", 0.5f); } } if (isGhost) //유체화 켜졌을때 { if (!aiPath) { return; } GhostAcceleration -= Time.deltaTime; if (GhostAcceleration >= 8.0f) { MaxSpeed = aiPath.maxSpeed + (aiPath.maxSpeed * (0.27f + (0.01f * (float)Playerlevel))); aiPath.maxSpeed += (aiPath.maxSpeed * (0.27f + (0.01f * Playerlevel))) * Time.deltaTime; if (aiPath.maxSpeed >= MaxSpeed) { aiPath.maxSpeed = MaxSpeed; } //27% + (1% * level) } if (GhostAcceleration <= 0) { Ghost(false); } } if (Input.GetKeyDown(KeyCode.J)) { ChampData.current_Cooldown_D = 1; ChampData.current_Cooldown_F = 1; } }
// Update is called once per frame void Update() { bool find = false; if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, 300.0f, 1 << LayerMask.NameToLayer("Home"))) { // 옵션UI가 꺼져있을때만 체크함 if (!optionCanvas.activeInHierarchy) { // UI랑 겹치면 안찾음. UI라 그래픽레이캐스터 bool uiCrash = false; if (uiCanvas != null) { GraphicRaycaster uiGR = uiCanvas.GetComponent <GraphicRaycaster>(); PointerEventData ped = new PointerEventData(null); ped.position = Input.mousePosition; List <RaycastResult> results = new List <RaycastResult>(); uiGR.Raycast(ped, results); foreach (RaycastResult result in results) { if (result.gameObject.transform.GetComponentInParent <GraphicRaycaster>().Equals(uiGR)) { uiCrash = true; break; } } } if (!uiCrash) { // 상점이 꺼져있고 마우스가 안바꼈을때면 마우스바꿈 if (!ShopCanvas.activeSelf && cursor && !mouseChanged) { if (cursor.CurrentCursor != 5) { cursor.SetCursor(5, Vector2.zero); mouseChanged = true; } } find = true; } // UI랑 충돌했을때 마우스가 바껴있으면 원래대로 돌림 else { if (mouseChanged) { if (cursor.CurrentCursor != cursor.PreCursor) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); mouseChanged = false; find = false; } } } } } else { if (mouseChanged) { if (cursor.CurrentCursor != cursor.PreCursor) { cursor.SetCursor(cursor.PreCursor, Vector2.zero); mouseChanged = false; } } } if (Input.GetMouseButton(0) && find) { if (cursor) { if (cursor.CurrentCursor != 0) { cursor.SetCursor(0, Vector2.zero); mouseChanged = false; } } if (!ShopCanvas.activeSelf) { ShopCanvas.SetActive(true); } } }