示例#1
0
 static public void RemoveLife()
 {
     if (LIFES == null)
     {
         return;
     }
     LIFES.RemoveAt(LIFES.Count - 1);
     S.lifes = LIFES.Count;
     HUDSystems.UpdateInventory();
 }
示例#2
0
 static public void RemoveArmor()
 {
     if (ARMORS == null)
     {
         return;
     }
     ARMORS.RemoveAt(ARMORS.Count - 1);
     S.armors = ARMORS.Count;
     HUDSystems.UpdateInventory();
 }
示例#3
0
 private void Start()
 {
     huds = GameObject.Find("Sources").GetComponent <HUDSystems>();
     UNITS.Add(GameObject.Find("WoodenStrongold"));
     if (flagGO == null)
     {
         flagGO      = new GameObject();
         flagGO.name = "RecruitPoint";
         flagGO.transform.SetPositionAndRotation(Vector3.zero, Quaternion.identity);
     }
 }
示例#4
0
    //To do: Management, Movement, Firing, Equipment and Customizing;


    void Awake()
    {
        S = this;

        // NOTE: We don't need to check whether or not rigid is null because of [RequireComponent()] above
        rigid = GetComponent <Rigidbody>();
        audio = GetComponent <AudioSource>();
        anim  = GetComponentInChildren <Animator>();
        GetAllDataFromSO();

        standardPos = transform.position;
        HUDSystems.UpdateInventory();
    }
示例#5
0
 IEnumerator WaitForSnafu()
 {
     while (snafuSystemCompletion)
     {
         if (LIFES.Count < 3)
         {
             AddLife(DropScriptableObject.GetInventoryItem_SM("life").GetComponent <Item>()); // can type heart instead
             snafuSystem.S         = snafuSystem.N = snafuSystem.A = snafuSystem.F = snafuSystem.U = false;
             snafuSystemCompletion = false;
             HUDSystems.UpdateInventory();
         }
         yield return(new WaitForSeconds(2));
     }
 }
示例#6
0
    void Awake()
    {
        S = this;

        /* Wanted in future
         * foreach(Image life in lifes)
         * {
         *  DICT_GUI_LIFES.Add(life.name, life);
         * }
         * foreach (Image armor in armors)
         * {
         *  DICT_GUI_LIFES.Add(armor.name, armor);
         * }
         */
        UpdateInventory();
    }
示例#7
0
    // static metod to adding whatever you want to

    static public void AddItem(Item item)
    {
        //Debug.Log("Item " + item + " ID " + item.itemID);
        switch (item.itemType)
        {
        case Item.eItemType.Heart:
            if (item.itemID == "00H1")
            {
                AddLife(item);
            }
            else
            {
                AddOrb(item);
            }
            break;

        case Item.eItemType.Armor:
            if (item.itemID == "00A1")
            {
                AddArmor(item);
            }
            break;

        case Item.eItemType.Cash:
            // Debug.Log("Added cash: " + item.value);
            Warpaid.AddCash(item.value);
            break;

        case Item.eItemType.Points:
            // Debug.Log("Added points: " + item.value);
            Warpaid.AddScore(item.value);
            TextEffect(item.value, item.transform);
            break;

        case Item.eItemType.Letter:
            AddLetter(item);
            // Notify the AchievementManager that something has happened
            AchievementManager.NotifyAchievementManager(item);
            break;

        case Item.eItemType.none:
        case Item.eItemType.all:
            Debug.LogWarning("Type of item has not been set!");
            break;
        }
        HUDSystems.UpdateInventory();
    }
示例#8
0
    static public void RemoveLetter(Item letter)
    {
        switch (letter.itemID)
        {
        // snafu
        case "00LS":
            snafuSystem.S = false;
            break;

        case "00LN":
            snafuSystem.N = false;
            break;

        case "00LA":
            snafuSystem.A = false;
            break;

        case "00LF":
            snafuSystem.F = false;
            break;

        case "00LU":
            snafuSystem.U = false;
            break;

        // other letters, bullet time etc.

        case "00LR":
            //RemoveRefrigerator(item); // name in progress;
            break;

        case "00LT":
            //RemoveShipTime(item); // name in progress
            break;

        case "00LB":
            //RemoveBulletTime(item); // name in progress
            break;

        default:
            Debug.Log("Playership:AddLetter - ID of item has not been set");
            break;
        }
        HUDSystems.UpdateInventory();
    }
    void Start()
    {
#if DEBUG_Warpaid_LogMethods
        Debug.Log("Warpaid:Start()");
#endif

        PLAYERS     = new List <PlayerShip>();
        ENEMIES     = new List <Enemy>();
        PARTICLE_GT = GameObject.Find("ParticleGT").gameObject.GetComponent <Text>();
        GameObject player = Instantiate(playersSO.partPrefabs[0], new Vector3(0, 0, 0), new Quaternion(0, 0, 0, 0));
        StartCoroutine(SpawnWaves());

        // Loading data needed
        SaveGameManager.Load();

        // Update score, cash etc for properly display
        AddScore(0);
        AddCash(0);
        HUDSystems.UpdateInventory();
    }
示例#10
0
 public void SnafuComplete()
 {
     if (!snafuSystemCompletion)
     {
         if (snafuSystem.S && snafuSystem.N && snafuSystem.A && snafuSystem.F && snafuSystem.U)
         {
             snafuSystemCompletion = true;
             AchievementManager.AchievementStep(Achievement.eStepType.snafuCompleted, 1);
             if (LIFES.Count < 3)
             {
                 AddLife(DropScriptableObject.GetInventoryItem_SM("life").GetComponent <Item>()); // can type heart instead
                 snafuSystem.S         = snafuSystem.N = snafuSystem.A = snafuSystem.F = snafuSystem.U = false;
                 snafuSystemCompletion = false;
                 HUDSystems.UpdateInventory();
             }
             else
             {
                 StartCoroutine(WaitForSnafu());
             }
         }
     }
 }
示例#11
0
    static public void RemoveOrb(Item orb)
    {
        switch (orb.itemID)
        {
        // orbs
        case "00HA":
            orbSystem.Red = false;
            break;

        case "00HB":
            orbSystem.Orange = false;
            break;

        case "00HC":
            orbSystem.Yellow = false;
            break;

        case "00HD":
            orbSystem.Green = false;
            break;

        case "00HE":
            orbSystem.Blue = false;
            break;

        case "00HF":
            orbSystem.Purple = false;
            break;

        case "00HH":
            orbSystem.White = false;
            break;

        default:
            Debug.Log("Playership:AddOrb - ID of item has not been set");
            break;
        }
        HUDSystems.UpdateInventory();
    }
示例#12
0
    static public void DirectToReplace(PlayerInfo playerInfo)
    {
        S.lifes      = playerInfo.lifes;
        S.armors     = playerInfo.armors;
        S.bulletRate = playerInfo.bulletRate;
        S.bulletTime = playerInfo.bulletTime;
        S.reflex     = playerInfo.reflex;
        S.speedBoost = playerInfo.speedBoost;
        S.freezeTime = playerInfo.freezeTime;
        S.energy     = playerInfo.energy;
        S.autoFire   = playerInfo.autoFire;

        for (int i = 0; i < S.lifes; i++)
        {
            AddLife(DropScriptableObject.GetInventoryItem_SM("life").GetComponent <Item>());
        }
        for (int i = 0; i < S.armors; i++)
        {
            AddArmor(DropScriptableObject.GetInventoryItem_SM("armor").GetComponent <Item>());
        }
        HUDSystems.UpdateInventory();
    }