예제 #1
0
    //-----------------------------------------------------------------------------------------------
    //-----------------------------------------------------------------------------------------------
    //-----------------------------------------------------------------------------------------------
    //-----------------------------------------------------------------------------------------------

    public virtual void SetupWeapon()
    {
        // assign photon view to the gunner
        //Player gunnerPlayer = gunnerPhotonView.Owner;

        _networkPlayerVehicle = GetComponentInParent <NetworkPlayerVehicle>();
        myVehicleManager      = GetComponentInParent <VehicleHealthManager>();
        gunnerWeaponManager   = gunnerPhotonView.GetComponent <GunnerWeaponManager>();
        if (_networkPlayerVehicle != null)
        {
            myNickName = _networkPlayerVehicle.GetGunnerNickName();
            myPlayerId = _networkPlayerVehicle.GetGunnerID();
            myTeamId   = _networkPlayerVehicle.teamId;
        }
        else
        {
            Debug.LogError("Weapon does not belong to a valid vehicle!! Assigning owner to null");
        }

        //weaponPhotonView.TransferOwnership(gunnerPlayer);

        weaponUi = FindObjectOfType <WeaponUi>();
        _playerTransformTracker = FindObjectOfType <PlayerTransformTracker>();
        if (fullSalvoOnStart)
        {
            currentSalvo = salvoSize;
        }
        isSetup = true;
    }
예제 #2
0
    public void SetupVehicleManager()
    {
        //   Debug.LogWarning("Vehicle Health Manager has not been fully ported to the new PhysX system");
        gamestateTracker           = FindObjectOfType <GamestateTracker>();
        gamestateTrackerPhotonView = gamestateTracker.GetComponent <PhotonView>();
        networkManager             = FindObjectOfType <NetworkManager>();
        maxHealth        = health;
        rb               = GetComponent <PhysXRigidBody>();
        icd              = GetComponent <InterfaceCarDrive>();
        icd4             = GetComponent <InterfaceCarDrive4W>();
        carDriver        = icd.GetComponent <IDrivable>();
        inputDriver      = GetComponent <InputDriver>();
        myPhotonView     = GetComponent <PhotonView>();
        npv              = GetComponent <NetworkPlayerVehicle>();
        announcerManager = FindObjectOfType <AnnouncerManager>();



        _rammingDetails = new Weapon.WeaponDamageDetails(null, 0, 0, Weapon.DamageType.ramming, 0, Vector3.zero);

        for (int i = 0; i < collisionAreas.Count; i++)
        {
            CollisionArea collisionArea = collisionAreas[i];
            collisionArea.rotation.eulerAngles = collisionArea.rotationEuler;
            collisionAreas[i] = collisionArea;
        }

        defaultDrag            = rb.linearDamping;
        defaultAngularDrag     = rb.angularDamping;
        playerTransformTracker = FindObjectOfType <PlayerTransformTracker>();

        PlayerEntry player = gamestateTracker.players.Get((short)PhotonNetwork.LocalPlayer.ActorNumber);

        if (player.teamId == teamId)
        {
            tutorials.SetActive(true);
        }
        else
        {
            tutorials.SetActive(false);
        }
        player.Release();
    }
예제 #3
0
 void DropPotato_RPC()
 {
     potatoPickedUp = false;
     vcam.m_Follow  = defaultPos;
     if (FindObjectOfType <PickupHotPotato>() != null)
     {
         vcam.m_LookAt = FindObjectOfType <PickupHotPotato>().transform;
     }
     else
     {
         PlayerTransformTracker playerTransformTracker = FindObjectOfType <PlayerTransformTracker>();
         foreach (PlayerTransformTracker.VehicleTransformTeamIdPair pair in playerTransformTracker.vehicleTransformPairs)
         {
             Transform vehicle = pair.vehicleTransform;
             bool      potato  = vehicle.GetComponent <HotPotatoManager>().isPotato;
             if (potato)
             {
                 vcam.m_LookAt = vehicle;
             }
         }
     }
 }
예제 #4
0
 // Start is called before the first frame update
 void Start()
 {
     //  telecastCam = FindObjectOfType<TelecastCam>().GetComponent<Camera>();
     //rawImage = FindObjectOfType<TelecastImage>().GetComponent<RawImage>();
     playerTransformTracker = FindObjectOfType <PlayerTransformTracker>();
 }