예제 #1
0
    // Called when the build phase is over. Activates physics for objects that need it, etc.
    public void StartGame()
    {
        gameBegan = true;

        foreach (GameObject gameObj in objectsToEnable)
        {
            if (gameObj != null)
            {
                gameObj.SetActive(true);
            }
        }

        // Find all InteractiveObjects in the game and BeginGame on each one
        GameObject[] allInteractiveObjects = GameObject.FindGameObjectsWithTag("InteractiveObject");
        foreach (GameObject gameObj in allInteractiveObjects)
        {
            InteractiveObject interObj = gameObj.GetComponent <InteractiveObject>();
            interObj.BeginGame();
        }

        // Get the final positions of all player placed objects
        invController.GetFinalValues();
        invController.RestrictInventory(true);

        // No player actions after beginning
        dragScript.ResetDraggedObjectValues();
        dragScript.enabled = false;

        adjustScript.HideButtons();
        adjustScript.enabled = false;

        wireEditor.enabled = false;
    }
예제 #2
0
    // Called by this script and also inventory items when clicked (whose click position will just be 0)
    public void SetNewDraggedObject(GameObject newDraggedObject, Vector2 clickPosition)
    {
        AudioController.Instance.audioSource.PlayOneShot(takeSound);

        Vector3 newClickPos = new Vector3(clickPosition.x, clickPosition.y, 0);

        // When dragging hide the modifyButtons
        adjustObjectsScript.HideButtons();


        draggedObject = newDraggedObject;

        // Remember some variables since we are going to change them
        previousColor = draggedObject.transform.GetComponent <SpriteRenderer>().material.color;
        previousLayer = draggedObject.GetComponent <Renderer>().sortingLayerName;
        previousZCord = draggedObject.transform.position.z;

        draggedObject.GetComponent <Renderer>().sortingLayerName = "AboveAll";
        draggedObject.transform.GetComponent <SpriteRenderer>().material.color = draggingColor;

        // Used when setting draggedObject's transform.position so that where the player clicked
        // is where the object is being dragged
        offset = new Vector3(draggedObject.transform.position.x, draggedObject.transform.position.y, 0) - newClickPos;
    }