// 폭발은 예술이다. void explosion() { string Name = "NoData"; // 잔해물 소환. for (int i = 0; i < 4; i++) { // 잔해물 4종류. switch (i) { case 0: Name = "Cube"; break; case 1: Name = "Cylinder"; break; case 2: Name = "Capsule"; break; case 3: Name = "Sphere"; break; } // 잔해물을 4종류를 5개씩 총 20개를 생성 후 뿌린다. for (int j = 0; j < 5; j++) { GameObject obj = ObjManager.Call().GetObject(Name); if (obj == null) { continue; } obj.transform.position = transform.position; obj.SetActive(true); obj.GetComponent <ExplosionHide>().StartCoroutine("StartExplosionHide"); } } }
public void buyClick() { if (GunMenu.activeSelf) { int price = int.Parse(ShopManager.instance.select_price.GetComponent <Text>().text.ToString()); Debug.Log(price); if (price <= PlayerManager.GetInstance().player.player_Point) { ShopManager.instance.gunBuy_check = 1; PlayerManager.GetInstance().player.BulletPower = int.Parse(ShopManager.instance.select_damage.GetComponent <Text>().text.ToString()); PlayerManager.GetInstance().SubPlayerPoint(price); ShopManager.instance.UpdatePoint(); ObjManager.Call().PlayerInfoUpdate(); //총알의 각각의 파워를 정의 PotionMenu.SetActive(true); GunMenu.SetActive(false); Select_menu.SetActive(false); GunButton.GetComponent <Button>().enabled = false; Buy_Canvas.SetActive(false); } } else { ShopManager.instance.potionBuy_check = 1; PotionMenu.SetActive(false); GunMenu.SetActive(true); Select_menu.SetActive(false); PotionButton.GetComponent <Button>().enabled = false; } ShopManager.instance.allBuy_check(); SoundManager.I.PlaySFX("charge"); }
// 소환! void ESummon() { if (zombieName == "Enemy") { for (int i = 0; i < MaxCount; i++) { GameObject obj = ObjManager.Call().GetObject("Enemy"); // Enemy객체 요청. obj.transform.position = RandomPos(); // 위치 랜덤 설정. obj.transform.parent = transform; // 부모 설정. obj.SetActive(true); // 적 활성화. obj.GetComponent <Enemy>().Init(); // 적 정보 초기화. EnemyCount++; } } if (zombieName == "Enemy2") { for (int i = 0; i < MaxCount; i++) { GameObject obj2 = ObjManager.Call().GetObject("Enemy2"); // Enemy객체 요청. obj2.transform.position = RandomPos(); // 위치 랜덤 설정. obj2.transform.parent = transform; // 부모 설정. obj2.SetActive(true); // 적 활성화. obj2.GetComponent <Enemy>().Init(); // 적 정보 초기화. EnemyCount++; } } Summon = true; }
// 총알 키 체크. void KeyCheck() { if (Input.GetButtonDown("Jump")) //스페이스바로 총알 발사 { if (realTimeBulletNumber == 1) { realTimeBulletNumber -= 1; currentBulletNumber.gameObject.GetComponent <Text>().text = (realTimeBulletNumber).ToString(); StartCoroutine("NextFire"); Invoke("reloadBullet", 3f); } else { realTimeBulletNumber -= 1; currentBulletNumber.gameObject.GetComponent <Text>().text = (realTimeBulletNumber).ToString(); StartCoroutine("NextFire"); } } else if (Input.GetButtonUp("Jump")) { ContinuouFire = false; } if (Input.GetKeyDown(KeyCode.Q)) { ObjManager.Call().MemoryDelete(); } // if (Input.GetKeyDown(KeyCode.E)) // ObjManager.Call().CreateObject("Bullet", 20); }
// 정보 갱신. public void InfoUpdate(float _Damage) { HP -= _Damage; if (HP <= 0) { // 폭발한다. explosion(); HP = 0; // 체력의 수치가 음의 값으로 갔을 경우를 대비한 초기화. Life = false; // 죽었음을 알림. if (this.gameObject.name == "Enemy") { PlayerManager.GetInstance().AddPlayerScore(100); } else if (this.gameObject.name == "Enemy2") { PlayerManager.GetInstance().AddPlayerScore(120); } // 내 죽음을 부모에리어에게 알려라! // 부모 에리어가 가진 스크립트를 가져와 DeadEnemy()함수를 호출. // transform.parent.GetComponent<CreateEnemy>().DeadEnemy(); ObjManager.Call().DestroyEnemy(); gameObject.SetActive(false); } }
void Start() { // 총알 생성 요청. ObjManager.Call().SetObject("Bullet"); Vec = GameObject.Find("CameraVector").transform; Init(); }
public void RestartStage() { this.stage = 1; this.realTimeBulletNumber = 15; this.StageSetting(); ObjManager.Call().CreateEnemyArea(10, 0, 1, 0); }
// 연속발사. IEnumerator NextFire() { ContinuouFire = true; while (ContinuouFire) { // 총알을 리스트에서 가져온다. BulletInfoSetting(ObjManager.Call().GetObject("Bullet")); yield return(new WaitForSeconds(AttackGap)); } }
public void InitArea(int areaCount, int areaGap, int createCount, int _newEnemyCount) { this.AreaCount = areaCount; this.AreaGap = areaGap; this.CreateCount = createCount; this.newEnemyCount = _newEnemyCount; CreateArea(this.AreaCount); // 에너미 생산 요청. ObjManager.Call().SetObject("Enemy"); ObjManager.Call().SetObject("Enemy2"); }
/// <summary> /// 스캔완료 버튼을 누를 시 가동되는 함수 /// </summary> private void MakeRespawn() { showHUD = true; Debug.Log("버튼눌림"); GameObject doorPreb = GameObject.Instantiate(door, Vector3.forward, Quaternion.identity); Debug.Log("생성됨"); GameObject.Find("Plane Generator").GetComponent <DetectedPlaneGenerator>().InitRespawn(doorPreb); Debug.Log("버튼종료"); ObjManager.Call().SetObject("Bullet"); ScanningForPlaneUI.SetActive(false); HUDUI.SetActive(true); }
public void NextStage() { this.stage++; GameObject.Find("Controller").GetComponent <ARSurvive.ARController>().NextStage(); this.StageSetting(); if (this.stage == 2) { ObjManager.Call().CreateEnemyArea(15, 0, 1, 5); } else if (this.stage == 3) { ObjManager.Call().CreateEnemyArea(15, 0, 1, 10); } }
public void StageSetting() { ObjManager.Call().MemoryDelete(); ObjManager.Call().GetComponent <EnemyArea>().RespawnArea.Clear(); GameObject.Destroy(GameObject.Find("EnemyArea")); // for(int i = 0; i < ObjManager.Call().transform.childCount; i ++){ // GameObject.Destroy(ObjManager.Call().transform.GetChild(i).gameObject); // } GameObject.Destroy(ObjManager.Call().gameObject.GetComponent <WreckageManager>()); ObjManager.Call().gameObject.AddComponent <WreckageManager>(); ObjManager.Call().SetObject("Bullet"); // ObjManager.Call().PlayerInfoUpdate(); //총알의 각각의 파워를 정의 }
void Start() { string Name = "NoData"; for (int i = 0; i < 4; i++) { switch (i) { case 0: Name = "Cube"; break; case 1: Name = "Cylinder"; break; case 2: Name = "Capsule"; break; case 3: Name = "Sphere"; break; } ObjManager.Call().SetObject(Name); } }
private bool ContinuouFire; // 게속 발사할 것인가? 에 대한 플래그. void Init() { // 구조체 정보 초기화. pInfo.MAX_HP = 100; pInfo.HP = pInfo.MAX_HP; pInfo.BulletPower = 20; pInfo.MoveSpeed = 5; pInfo.Life = true; //공개. AttackGap = 0.2f; // 비공개 MovePos = Vector3.zero; ContinuouFire = true; // 플레이어 정보갱신. ObjManager.Call().PlayerInfoUpdate(); }
// 총알 키 체크. void KeyCheck() { if (Input.GetButtonDown("Jump")) //스페이스바로 총알 발사 { StartCoroutine("NextFire"); } else if (Input.GetButtonUp("Jump")) { ContinuouFire = false; } if (Input.GetKeyDown(KeyCode.Q)) { ObjManager.Call().MemoryDelete(); } // if (Input.GetKeyDown(KeyCode.E)) // ObjManager.Call().CreateObject("Bullet", 20); }