protected void destroyLaserObject(Collider other) { GameObject target = other.gameObject; NetworkIdentity net_id = other.GetComponentInParent <NetworkIdentity>(); Living player = null; if (net_id) { target = net_id.gameObject; player = target.GetComponent <Living>(); } if (isServer) { switch (target.tag) { case "Player": if (net_id.netId.Value != OwnerID && player) { player.ApplyDamage(5.0f, "player:" + OwnerID.ToString("X8")); } break; default: break; } NetworkServer.Destroy(this.gameObject); } }
public virtual void HandleHit(Bullet bullet, Living sprite) { sprite.ApplyDamage(Damage); SpriteContainer.Remove(bullet); if (!sprite.IsAlive()) SpriteContainer.Remove(sprite); afterSuccessfulHit(bullet, sprite); }