Exemple #1
0
    private float m_jumpTimer;           //Prevents key bouncing issues;
    ///


    void Start()
    {
        FOV = playerCamera.fieldOfView;

        /// Initialization details.
        current = this;                                                                 //The current player controller is assigned so you can access it whenever you need to.

        gameObject.GetComponent <AudioManager>().Init();                                //The AudioManager is initialized so that player sounds can be objectpooled.

        m_topSpeed = moveSpeed;                                                         //The top speed is set to the default moveSpeed.
        m_char     = gameObject.GetComponent <CharacterController>();                   //The character controller reference is cached.

        m_goalAngles          = playerCamera.gameObject.transform.rotation.eulerAngles; //Goal angles are based on the player camera's rotation.
        m_camOrigin           = playerCamera.transform.localPosition;                   //The camera's origin is cached so bobbing and landing effects can be applied without the camera losing its default position.
        m_camOriginBaseHeight = m_camOrigin.y;
        m_camPosTracer        = m_camOrigin;                                            //This is where the camera truly lies in a given frame.

        Cursor.lockState = CursorLockMode.Locked;                                       //Cursor is locked.
        Cursor.visible   = false;                                                       //Cursor is hidden.
        ///

        ///Framerate locking, if you so please.
        if (lockFramerate)
        {
            if (frameRate < 60) //If the framerate is below sixty, we have to disable V-Sync to forcibly change the framerate.
            {
                QualitySettings.vSyncCount = 0;
            }

            Application.targetFrameRate = frameRate; //Framerate is set at the value you specified above.
        }
        ///

        m_baseHeight = m_char.height;
    }
Exemple #2
0
 private void Start()
 {
     playerFPSController = GameObject.FindObjectOfType <PlayerFPSController>();
     playerObject        = playerFPSController.gameObject;
     harvest             = GameObject.FindObjectOfType <Harvest>();
     harvest.pickUpPrompt.SetActive(true);
 }
    // Start is called before the first frame update
    void Start()
    {
        Teleporter       = Teleporter ? Teleporter : FindObjectOfType <PlayerTeleporter>();
        PlayerController = PlayerController ? PlayerController : FindObjectOfType <PlayerFPSController>();

        Teleporter.OnTeleportFinish   += SpawnObject;
        PlayerController.OnSpacePress += ChangeColors;
        PlayerController.OnQPress     += DeleteSpawned;
    }
Exemple #4
0
 void Start()
 {
     TeleportIndicator = Instantiate(TeleportIndicator);
     TeleportIndicator.SetActive(false);
     FpsController = FpsController ? FpsController : GetComponentInChildren <PlayerFPSController>();
     PlayerPointer = PlayerPointer ? PlayerPointer : GetComponentInChildren <Pointer>();
     PlayerPointer.OnRaycastHit  += CheckTelePort;
     PlayerPointer.OnRaycastMiss += ClearIndicator;
 }
Exemple #5
0
    public void SaveGame(string saveFile, string saveType)
    {
        playerFPSController = GameObject.FindObjectOfType <PlayerFPSController>();
        playerObject        = playerFPSController.gameObject;

        if (!IsSaveFile())
        {
            Directory.CreateDirectory(Application.persistentDataPath + "/game_save");
        }
        if (!Directory.Exists(Application.persistentDataPath + "/game_save/" + saveFile))
        {
            Directory.CreateDirectory(Application.persistentDataPath + "/game_save/" + saveFile);
        }


        //handle types of save files
        if (saveType == "inventory.txt")
        {
            for (int i = 0; i < inventorySize; i++)
            {
                Slot currentSlot = inventory.slots[i].GetComponent <Slot>();
                //inventoryData.slotIDs[i] = currentSlot.slotID;

                if (currentSlot.myItem != null)
                {
                    inventoryData.itemIDs[i]  = currentSlot.myItem.itemID;
                    inventoryData.itemAMTs[i] = currentSlot.myAmount;
                }
            }
        }

        if (saveType == "player.txt")
        {
            playerStateData.playerPos = playerObject.transform.position;
            playerStateData.playerRot = playerObject.transform.rotation;
        }

        if (saveType == "dateTime.txt")
        {
            saveFileDateTime.time = DateTime.Now.ToString("hh:mm:ss");
        }
        //end of handling types of save files


        BinaryFormatter bf = new BinaryFormatter();

        if (File.Exists(Application.persistentDataPath + "/game_save/" + saveFile + "/" + saveType))
        {
            File.Delete(Application.persistentDataPath + "/game_save/" + saveFile + "/" + saveType);
        }

        FileStream file = File.Create(Application.persistentDataPath + "/game_save/" + saveFile + "/" + saveType);

        //different saveTypes fo Json-ing
        if (saveType == "inventory.txt")
        {
            var json = JsonUtility.ToJson(inventoryData);
            bf.Serialize(file, json);
        }

        if (saveType == "player.txt")
        {
            var json = JsonUtility.ToJson(playerStateData);
            bf.Serialize(file, json);
        }

        if (saveType == "dateTime.txt")
        {
            var json = JsonUtility.ToJson(saveFileDateTime);
            bf.Serialize(file, json);
        }
        //end of jsoning


        file.Close();

        saveMenu.SetActive(false);
        if (!PauseMenu.isPaused)
        {
            Cursor.visible   = false;
            Cursor.lockState = CursorLockMode.Locked;
        }
    }