Ejemplo n.º 1
0
    void OnMouseDrag()
    {
        if (canbeOpen)
        {
            playerRot             = playerTransform.eulerAngles.y;
            delta                 = (playerRot - startPlayerRot) * openDirection; // openDirection si important or player rotation will be the inverse of door rot
            currRot               = (startRot.y + (delta * factor));
            currRot               = Mathf.Clamp(currRot, minRot, maxRot);         // door rotation can't be bigger or smaller than min and max rot
            transform.eulerAngles = new Vector3(startRot.x, currRot, startRot.z);

            if (FPH_InventoryManager.equippedItem == neededObject_Name && !hasBeenUnlocked)
            {
                hasBeenUnlocked = true;
                FPH_ControlManager.SaveBool(hasBeenUnlockedKey, hasBeenUnlocked);
                doorType = 0;

                //Afte we used the item we unequip it
                FPH_InventoryManager.equippedItem       = "";
                FPH_InventoryManager.equippedItem_Index = -1;
                if (removeItemWhenUsed)
                {
                    FPH_InventoryManager.RemoveInventoryItem(FPH_InventoryManager.equippedItem_Index);
                    FPH_InventoryManager.SaveInventory();
                }
            }
        }
    }
Ejemplo n.º 2
0
    void PrivateOpen()
    {
        if (openSound)
        {
            GetComponent <AudioSource>().PlayOneShot(openSound);
        }
        objectToAnimate.GetComponent <Animation>().CrossFade(openDoorAniString);

        if (autoclose)
        {
            StartCoroutine("CloseAfterOpen");
        }

        if (FPH_InventoryManager.equippedItem == neededObject_Name && !hasBeenUnlocked)
        {
            hasBeenUnlocked = true;
            FPH_ControlManager.SaveBool(hasBeenUnlockedKey, hasBeenUnlocked);
            doorType = 0;
            isOpen   = true;

            if (removeItemWhenUsed)
            {
                FPH_InventoryManager.RemoveInventoryItem(FPH_InventoryManager.equippedItem_Index);
            }
            //Afte we used the item we unequip it
            FPH_InventoryManager.equippedItem       = "";
            FPH_InventoryManager.equippedItem_Index = -1;
            FPH_InventoryManager.SaveInventory();
        }
    }
Ejemplo n.º 3
0
 public static void RemoveInventoryItem(int index)
 {
     inventoryName.RemoveAt(index);
     inventoryTexture.RemoveAt(index);
     inventoryDesc.RemoveAt(index);
     FPH_InventoryManager.SaveInventory();
 }
Ejemplo n.º 4
0
 public static void RemoveAllInventoryItem()
 {
     for (int i = 0; i < inventoryName.Count; i++)
     {
         inventoryName.RemoveAt(i);
         inventoryTexture.RemoveAt(i);
         inventoryDesc.RemoveAt(i);
         FPH_InventoryManager.SaveInventory();
     }
 }
Ejemplo n.º 5
0
 public void Interact()
 {
     if (FPH_InventoryManager.HasObject(neededObj))
     {
         StartCoroutine("HaveObject");
     }
     else
     {
         StartCoroutine("NotHaveObject");
     }
 }
    IEnumerator HaveObject()
    {
        FPH_InventoryManager.RemoveInventoryItem(FPH_InventoryManager.equippedItem_Index);
        FPH_InventoryManager.equippedItem               = "";
        FPH_InventoryManager.equippedItem_Index         = -1;
        FPH_LanguageManager.static_observeTextMesh.text = neededObj + " has been used and removed from inventory.";

        yield return(new WaitForSeconds(2.0f));

        FPH_LanguageManager.static_observeTextMesh.text = "";
    }
    /*
     * public void OnCustomMouseUp(){
     *      buttonSprite.sprite = spriteReleased;
     *
     *      HandleButtonUp();
     * }
     * public void OnTouchUp(){
     *      buttonSprite.sprite = spriteReleased;
     *
     *      HandleButtonUp();
     * }
     *
     * public void OnCustomMouseDown(){
     *      HandleButtonDown();
     * }
     * public void OnTouchDown(){
     *      HandleButtonDown();
     * }
     */

    public void HandleButtonUp()
    {
        if (buttonType == ButtonEnum.Back)
        {
            FPH_InventoryManager.selectedIndex      = -1;
            FPH_InventoryManager.equippedItem       = "";
            FPH_InventoryManager.equippedItem_Index = -1;
        }
        if (buttonType == ButtonEnum.Equip)
        {
            FPH_InventoryManager.EquipObject();
        }
    }
Ejemplo n.º 8
0
    public void OnMouseUp()
    {
        if (doorType == 1)
        {
            StartCoroutine("PrivateLocked");
        }
        if (doorType == 2)
        {
            if (FPH_InventoryManager.equippedItem != neededObject_Name && FPH_InventoryManager.equippedItem != "" && FPH_InventoryManager.equippedItem != " ")
            {
                StartCoroutine("PrivateWrongItem");
            }
            if (FPH_InventoryManager.equippedItem == "" || FPH_InventoryManager.equippedItem == " ")
            {
                StartCoroutine("PrivateLocked");
            }
        }
        if (doorType == 3 && !canbeOpen)
        {
            StartCoroutine("PrivateLocked");
        }

        if (canbeOpen)
        {
            startRot.y = currRot;
            delta      = 0;

            if (FPH_InventoryManager.equippedItem == neededObject_Name && !hasBeenUnlocked)
            {
                hasBeenUnlocked = true;
                FPH_ControlManager.SaveBool(hasBeenUnlockedKey, hasBeenUnlocked);
                doorType = 0;

                //Afte we used the item we unequip it
                FPH_InventoryManager.equippedItem       = "";
                FPH_InventoryManager.equippedItem_Index = -1;
                if (removeItemWhenUsed)
                {
                    FPH_InventoryManager.RemoveInventoryItem(FPH_InventoryManager.equippedItem_Index);
                    FPH_InventoryManager.SaveInventory();
                }
            }
        }
    }
    /*
     * If we already have this object in our inventory we deactivate it.
     * Since and object has different inventory name for different languages
     * we must perform a check for every languages.
     */
    void Start()
    {
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_English);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_Italian);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_Spanish);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_German);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_French);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_Japanese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_Chinese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
        {
            hasObj = FPH_InventoryManager.HasObject(objName_Russian);
        }

        if (deleteIfKey)
        {
            hasKey = FPH_ControlManager.LoadBool(neededKey);

            if (hasKey)
            {
                if (obtainedObj == null && gameObject.activeSelf)
                {
                    gameObject.SetActive(false);
                }
                else if (obtainedObj != null && obtainedObj.activeSelf)
                {
                    obtainedObj.SetActive(false);
                }
            }
        }
        if (hasObj)
        {
            if (obtainedObj == null && gameObject.activeSelf)
            {
                gameObject.SetActive(false);
            }
            else if (obtainedObj != null && obtainedObj.activeSelf)
            {
                obtainedObj.SetActive(false);
            }
        }
    }
    void CheckDeleteOtherObject()
    {
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_English);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_Italian);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_Spanish);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_German);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_French);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_Japanese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_Chinese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
        {
            hasOtherObj = FPH_InventoryManager.HasObject(otherObjName_Russian);
        }

        if (hasOtherObj)
        {
            int deleteAtIndex = -1;
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_English);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_Italian);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_Spanish);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_German);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_French);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_Japanese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_Chinese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
            {
                deleteAtIndex = FPH_InventoryManager.inventoryName.IndexOf(otherObjName_Russian);
            }

            if (restoreOtherObjectToObtain)
            {
                otherObject.SetActive(true);
                otherObject.GetComponent <Renderer>().enabled = true;
                otherObject.GetComponent <Collider>().enabled = true;
            }

            FPH_InventoryManager.RemoveInventoryItem(deleteAtIndex);

            if (otherObjectHasKey && PlayerPrefs.HasKey(otherObjKey))
            {
                PlayerPrefs.DeleteKey(otherObjKey);
            }
        }
    }
    /*
     * When we obtain an object we show a message and then for every language we put
     * the object into the inventory.
     * We're doing that because an object will have different names and descriptions
     * depending on game language.
     */
    IEnumerator ObtainMessage()
    {
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_English;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_Italian;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_Spanish;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_German;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_French;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_Japanese;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_Chinese;
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
        {
            FPH_LanguageManager.static_observeTextMesh.text = obtainMessage_Russian;
        }

        yield return(new WaitForSeconds(secToOserve));

        FPH_LanguageManager.static_observeTextMesh.text = "";

        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
        {
            FPH_InventoryManager.AddInventoryItem(objName_English, obj_Texture.name.ToString(), description_English);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
        {
            FPH_InventoryManager.AddInventoryItem(objName_Italian, obj_Texture.name.ToString(), description_Italian);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
        {
            FPH_InventoryManager.AddInventoryItem(objName_Spanish, obj_Texture.name.ToString(), description_Spanish);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
        {
            FPH_InventoryManager.AddInventoryItem(objName_German, obj_Texture.name.ToString(), description_German);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
        {
            FPH_InventoryManager.AddInventoryItem(objName_French, obj_Texture.name.ToString(), description_French);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
        {
            FPH_InventoryManager.AddInventoryItem(objName_Japanese, obj_Texture.name.ToString(), description_Japanese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
        {
            FPH_InventoryManager.AddInventoryItem(objName_Chinese, obj_Texture.name.ToString(), description_Chinese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
        {
            FPH_InventoryManager.AddInventoryItem(objName_Russian, obj_Texture.name.ToString(), description_Russian);
        }

        FPH_InventoryManager.SaveInventory();
    }
Ejemplo n.º 12
0
    // Update is called once per frame
    void Update()
    {
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_English);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_English);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_Italian);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_Italian);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_Spanish);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_Spanish);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_German);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_German);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_French);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_French);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_Japanese);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_Japanese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_Chinese);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_Chinese);
        }
        if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
        {
            hasObject01 = FPH_InventoryManager.HasObject(obj01Name_Russian);
            hasObject02 = FPH_InventoryManager.HasObject(obj02Name_Russian);
        }

        if (hasObject01 && !hasObject02)
        {
            int objIndex = -1;
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_English);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_Italian);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_Spanish);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_German);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_French);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_Japanese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_Chinese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj01Name_Russian);
            }

            if (objIndex != -1)
            {
                Texture2D spriteText = (Texture2D)Resources.Load("ItemTexture/" + FPH_InventoryManager.inventoryTexture[objIndex]) as Texture2D;
                Sprite    textSprite = Sprite.Create(spriteText, new Rect(0, 0, 128.0f, 128.0f), new Vector2(0.5f, 0.5f), 100);
                gameObject.GetComponent <SpriteRenderer>().sprite = textSprite;
                privateObjIndex = objIndex;
            }
            if (objIndex == -1)
            {
                gameObject.GetComponent <SpriteRenderer>().sprite = null;
            }
        }
        if (!hasObject01 && hasObject02)
        {
            int objIndex = -1;
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.English)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_English);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Italian)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_Italian);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Spanish)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_Spanish);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.German)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_German);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.French)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_French);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Japanese)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_Japanese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Chinese)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_Chinese);
            }
            if (FPH_LanguageManager.gameLanguage == FPH_LanguageManager.LanguagesEnum.Russian)
            {
                objIndex = FPH_InventoryManager.inventoryName.IndexOf(obj02Name_Russian);
            }

            if (objIndex != -1)
            {
                Texture2D spriteText = (Texture2D)Resources.Load("ItemTexture/" + FPH_InventoryManager.inventoryTexture[objIndex]) as Texture2D;
                Sprite    textSprite = Sprite.Create(spriteText, new Rect(0, 0, 128.0f, 128.0f), new Vector2(0.5f, 0.5f), 100);
                gameObject.GetComponent <SpriteRenderer>().sprite = textSprite;
                privateObjIndex = objIndex;
            }
            if (objIndex == -1)
            {
                gameObject.GetComponent <SpriteRenderer>().sprite = null;
            }
        }


        if (!hasObject01 && !hasObject02)
        {
            privateObjIndex = -1;
            gameObject.GetComponent <SpriteRenderer>().sprite = null;
        }
    }