public void Destroy_Stone()//오브젝트 파괴시 서버에 정보를 넘겨줌 { if (Singleton.instance.pStone.status == 1) { DIE_M des_num = Stones[Singleton.instance.pStone.number].GetComponent <DIE_M>(); Destroy(des_num.gameObject); Singleton.instance.Reset_Stone(); } }
public void Destroy_bullet() // 오브젝트 파괴 시 서버에 번호를 넘겨줌 { if (Singleton.instance.pBullet.status == 1) { DIE_M des_num = bullets[Singleton.instance.pBullet.number].GetComponent <DIE_M>(); Destroy(des_num.gameObject); Singleton.instance.Reset_Bullet(); } }
public void Destroy_tree() //오브젝트 파괴 시 번호를 서버에 넘겨줌 { if (Singleton.instance.pTree.status == 1) { DIE_M des_num = trees[Singleton.instance.pTree.number].GetComponent <DIE_M>(); Destroy(des_num.gameObject); Singleton.instance.Reset_Tree(); } }
public void Set_Num()//시작 시 오브젝트 번호 설정 { for (int i = 0; i < bullets.Length; i++) { DIE_M num = bullets[i].GetComponent <DIE_M>(); if (num != null) { num.Num = i; } } }
public void Rays() { RaycastHit rayhit; if (Mode == 0) { Atk = true; transform.GetComponent <AudioSource>().clip = AttackSound; transform.GetComponent <AudioSource>().Play(); if (player == Player_number) { if (Physics.Raycast(cam.transform.position, cam.transform.forward, out rayhit, 0.2f, layerMask)) { DIE_M dies = rayhit.transform.GetComponent <DIE_M>(); if (dies != null) { ParticleSystem PCS = Instantiate(PS.gameObject).GetComponent <ParticleSystem>(); PCS.transform.position = new Vector3(rayhit.transform.position.x, transform.position.y + 0.2f, rayhit.transform.position.z); PCS.transform.LookAt(transform); PCS.Play(); dies.ondie(Player_number); } if (rayhit.transform.tag == "Player") { rayhit.transform.GetComponent <Rigidbody>().velocity = new Vector3(0, 1, 0) + transform.forward * 1.5f; } } } } else if (Mode == 1 && minBullet > 0) //사격 모드 { if (player == Player_number && cam.fieldOfView > 10) { GameObject Sep1 = Instantiate(Shotep1, T_Shotep1); GameObject Sep2 = Instantiate(Shotep2, T_Shotep1); } else { GameObject Sep1 = Instantiate(Shotep1, T_Shotep2); GameObject Sep2 = Instantiate(Shotep2, T_Shotep2); } GameObject gShot = Instantiate(shot, shotposition); gShot.GetComponent <Shot>().name = Guns; gShot.GetComponent <Shot>().layermask = layerMask; MouseX += G_Rebound(Guns, 2); MouseY += G_Rebound(Guns, 1); shotposition.DetachChildren(); ani.SetLayerWeight(1, 0.8f); minBullet--; } else if (Mode == 2) // 빌트박스를 통해 건물 오브젝트 설치 { if (MinMaterial <= MaxMaterial) { if (Buildbox.active) { float dis = Vector3.Distance(cam.transform.position, Buildbox.transform.position); Vector3 v3 = Buildbox.transform.position - cam.transform.position; if (Physics.Raycast(cam.transform.position, v3, out rayhit, dis, LayerMask.NameToLayer("UI"))) // 중복체크 { if (rayhit.transform.tag == "floor") { CreateCheck = false; } else { CreateCheck = true; } } else { CreateCheck = true; } if (Buildbox.GetComponent <buildbox>().Check&& CreateCheck) { MaxMaterial -= MinMaterial; MaterialChange(MaxMaterial); Singleton.instance.Send_Floor(MaterialMode, Buildbox.transform.position.x, Buildbox.transform.position.y, Buildbox.transform.position.z, Player_number); gb = Instantiate(selobj); gb.transform.position = Buildbox.transform.position; } } else if (Buildbox2.active) { if (Buildbox2.GetComponent <WallbuildBox>().Check) { gb = Instantiate(selobj); gb.transform.position = Buildbox2.transform.position; gb.transform.rotation = Buildbox2.transform.rotation; MaxMaterial -= MinMaterial; MaterialChange(MaxMaterial); } } } } }