コード例 #1
0
    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);
        }
    }
コード例 #2
0
ファイル: Weapon.cs プロジェクト: knutdr/Space_defender
 public virtual void HandleHit(Bullet bullet, Living sprite)
 {
     sprite.ApplyDamage(Damage);
     SpriteContainer.Remove(bullet);
     if (!sprite.IsAlive())
         SpriteContainer.Remove(sprite);
     afterSuccessfulHit(bullet, sprite);
 }