public void Kick(float bombShootSpeed, float rotateTime, float kickDelay, Vector3 forwardDir) { if (carriedObject != null && !waitForCarrying) { if (carriedObject.type != PushableObject.CarryType.Bomb) { return; } Bomb bomb = carriedObject.GetComponent <Bomb>(); if (bomb != null) { StartCoroutine(RotateToTarget(bomb, forwardDir, rotateTime)); PhotonView bombView = PhotonView.Get(bomb); bomb.DelayShoot(forwardDir * bombShootSpeed, kickDelay); bomb.Detach(); bombView.RPC("DelayShoot", RpcTarget.Others, forwardDir * bombShootSpeed, kickDelay); bombView.RPC("Detach", RpcTarget.Others); carriedObject = null; } } }