void OnTriggerExit2D(Collider2D other) { if (other.tag == "ground") { PhotonView.Destroy(gameObject); } }
public void CleanLines() { foreach (GameObject line in lines) { PhotonView.Destroy(line); } lines.Clear(); }
void OnTriggerEnter(Collider other) { if (other.tag == "Spider") { other.SendMessage("Damage", _ownerId); } else { PhotonView.Destroy(gameObject); } }
void IsDestroyed() { if (this.hp <= 0) { var value = Time.time.ToString() + Random.Range(0, float.MaxValue); string hash = Hash128.Parse(value).ToString(); var go = PhotonNetwork.Instantiate("BigExplosionEffectPref", GetComponent <Transform>().position, Quaternion.identity, 0, new object[] { hash }); if (this.gameObject != null) { PhotonView.Destroy(this.gameObject); } } }
void OnTriggerEnter2D(Collider2D other) { if (other.tag == "apple_red" || other.tag == "apple_green") { audio.PlayOneShot(audio.clip); Debug.Log("get apple !"); if (photonView.isMine) { game.appleCounterUp(other.tag); } PhotonView.Destroy(other.gameObject); } }
public void TakeDamage(int p_damage) { if (photonView.IsMine) { current_health -= p_damage; Debug.Log(current_health); if (current_health <= 0) { manager.Spawn(); PhotonView.Destroy(gameObject); } } }
public void takeDamage(float damage) { if (PV.IsMine) { health -= damage; if (health > MaxHealth) { health = MaxHealth; } if (health < 0) { PhotonView.Destroy(gameObject); } } }
private void OnTriggerEnter(Collider other) { if (other.CompareTag("MysteryBox")) { int item = Random.Range(0, IconSprites.Count - 1); switch (item) { case 0: player.item = ArcadeKart.Items.Banana; break; case 1: player.item = ArcadeKart.Items.RedShell; break; case 2: player.item = ArcadeKart.Items.GreenShell; break; case 3: player.item = ArcadeKart.Items.BoostSpeed; break; case 4: player.item = ArcadeKart.Items.LowSpeed; break; default: player.item = ArcadeKart.Items.None; gameFlowManager.ImageItem.sprite = IconSprites[5]; break; } if (gameObject.CompareTag("Player")) { if (!multiplayer) { gameFlowManager.ImageItem.sprite = IconSprites[item]; Destroy(other.gameObject); } else if (multiplayer && this.GetComponent <PhotonView>().IsMine) { PhotonView.Destroy(other.gameObject); gameFlowManager.ImageItem.sprite = IconSprites[item]; } } player.m_canThrow = true; } }
void TrigerBombEffect() { Debug.Log("triger freezebomb effect"); //例項化一個爆炸效果 Instantiate(explosion, gameObject.transform.position, Quaternion.identity); //GameObject bombAnime = PhotonNetwork.Instantiate(explosion.name, gameObject.transform.position, Quaternion.identity); //獲得以炸彈為中心的一定範圍內的所有物件 Collider2D[] colliders = Physics2D.OverlapCircleAll(gameObject.transform.position, radius); foreach (Collider2D itemCollider2D in colliders) { GameObject item = itemCollider2D.gameObject; if (item == gameObject) { Debug.Log("freezebomb effect: self " + item.name); } else { } Vector3 forceDirection = -(gameObject.transform.position - item.transform.position); forceDirection[2] = 0; Debug.Log("bomb effect: other " + item.name + ":" + forceDirection.normalized); if (item.name == "Player(Clone)") { var statusScript = item.GetComponent <PlayerStatus>(); int id = statusScript.GetStatusIdByName("Freeze"); item.GetComponent <PlayerManager>().SetStatusEffect(id, 5); } /* * if(item.GetComponent<Pushable>() != null){ * Vector3 forceDirection = -(gameObject.transform.position - item.transform.position); * forceDirection[2] = 0; * Debug.Log("bomb effect: other " + item.name + ":" + forceDirection.normalized); * //item.GetComponent<Rigidbody2D>().AddForce(forceDirection * bombForce,ForceMode2D.Impulse); * PhotonView photonViewOther = PhotonView.Get(item); * if(photonViewOther != null){ * photonViewOther.RPC("bePushedByforce", RpcTarget.All, forceDirection * bombForce); * } * } */ } triger_flag = false; //Animator bombAnimator = bombAnime.GetComponentInChildren<Animator>(); //PhotonNetwork.Destroy(bombAnime); PhotonView.Destroy(this.gameObject); }
private void Update() { if (PhotonNetwork.inRoom) { Debug.Log(PhotonNetwork.room.Name + " " + PhotonNetwork.room.PlayerCount + " " + PhotonNetwork.playerName); if (PhotonNetwork.room.MaxPlayers == PhotonNetwork.room.PlayerCount) { if (PhotonNetwork.isMasterClient && MatchManager == null) { MatchManager = PhotonNetwork.Instantiate("MatchManager", Vector3.zero, Quaternion.identity, 0).GetComponent <MatchManager>(); } //매치매이킹 성공 } else if (MatchManager != null) { PhotonView.Destroy(MatchManager.gameObject); } } }
void TrigerBombEffect() { Debug.Log("triger bomb effect"); //例項化一個爆炸效果 Instantiate(explosion, gameObject.transform.position, Quaternion.identity); //GameObject bombAnime = PhotonNetwork.Instantiate(explosion.name, gameObject.transform.position, Quaternion.identity); //獲得以炸彈為中心的一定範圍內的所有物件 Collider2D[] colliders = Physics2D.OverlapCircleAll(gameObject.transform.position, radius); foreach (Collider2D itemCollider2D in colliders) { GameObject item = itemCollider2D.gameObject; var playerManager = item.GetComponent <PlayerManager>(); if (playerManager != null) { playerManager.energy -= removeEnergy; } } triger_flag = false; PhotonView.Destroy(this.gameObject); }
void OnTriggerEnter2D(Collider2D other) { if (photonView.IsMine || !multiplayerMode) { if (other.gameObject.tag == "Drops") { if (other.gameObject.GetComponent <ChipScript>() != null) { //Debug.LogError("Hit a Chip"); chips += other.gameObject.GetComponent <ChipScript>().chips; PhotonView.Destroy(other.gameObject); } } if (other.gameObject.tag == "NPC") { interactable = other.gameObject; } } if (other.gameObject.tag == "PlayerProjectile") { if (canTakeDamage) { if (other.gameObject.GetComponent <BulletScript>().shooterID != photonView.ViewID) { if (other.gameObject.transform.position.x < transform.position.x) { hitDirectionRight = false; } else { hitDirectionRight = true; } //Debug.Log("Hitted Other Player"); TakeDamage(other.gameObject.GetComponent <BulletScript>().GetDamage()); Destroy(other.gameObject); } } } }
void TrigerBombEffect() { Debug.Log("triger camera shake effect"); //例項化一個爆炸效果 Instantiate(explosion, gameObject.transform.position, Quaternion.identity); //GameObject bombAnime = PhotonNetwork.Instantiate(explosion.name, gameObject.transform.position, Quaternion.identity); //獲得以炸彈為中心的一定範圍內的所有物件 Collider2D[] colliders = Physics2D.OverlapCircleAll(gameObject.transform.position, radius); foreach (Collider2D itemCollider2D in colliders) { GameObject item = itemCollider2D.gameObject; var statusScript = item.GetComponent <PlayerStatus>(); if (statusScript != null) { int id = statusScript.GetStatusIdByName("CameraShaking"); item.GetComponent <PlayerManager>().SetStatusEffect(id, time); } } triger_flag = false; //Animator bombAnimator = bombAnime.GetComponentInChildren<Animator>(); //PhotonNetwork.Destroy(bombAnime); PhotonView.Destroy(this.gameObject); }