Beispiel #1
0
 void Start()
 {
     player           = transform.root.gameObject;
     control          = player.GetComponent <PlayerInputControls>();
     playerInventory  = player.GetComponent <PlayerInventory>();
     playerProperties = player.GetComponent <PlayerProperties>();
     playerController = player.GetComponent <PlayerControllerSinglePlayer>();
     playerStamina    = player.GetComponent <Stamina>();
     playerAmmo       = player.GetComponent <PlayerAmmo>();
     for (int i = 0; i < transform.childCount; i++)
     {
         int tempInt = i;
         itemImage.Add(transform.GetChild(i).transform.GetChild(1).GetComponent <Image>());
         itemButtons.Add(transform.GetChild(i).GetComponent <Button>());
         amountOfText.Add(transform.GetChild(i).transform.GetChild(2).GetComponent <Text>());
         itemImage[i].rectTransform.localPosition = new Vector3(12.8f, -12.8f, 0);
         itemButtons[i].onClick.AddListener(() => ButtonClickFunction(tempInt));
         EventTrigger       trigger = itemButtons[tempInt].GetComponent <EventTrigger>();
         EventTrigger.Entry entry   = new EventTrigger.Entry();
         entry.eventID = EventTriggerType.PointerEnter;
         entry.callback.AddListener((data) => { OnPointerEnterDelegate((PointerEventData)data, tempInt); });
         trigger.triggers.Add(entry);
         numOfItemSlots++;
         UnityEvent rightClickTrigger = transform.GetChild(i).GetComponent <RightClickButton>().rightClick;
         rightClickTrigger.AddListener(() => OnRightClick(tempInt));
     }
     for (int i = 0; i < 6; i++)
     {
         AddInventorySlot();
     }
     playerArmor  = player.GetComponent <PlayerArmor>();
     playerHealth = player.GetComponent <HealthSinglePlayer>();
     weaponSwitch = player.GetComponent <WeaponSwitch>();
 }
 public void OnShowArmor(PlayerArmor armor)
 {
     subEquipmentPanel.gameObject.SetActive(false);
     if (armor != null)
     {
         if (armor.armor != null)
         {
             image.gameObject.SetActive(true);
             image.sprite         = Resources.Load <Sprite>(armor.armor.imgPath);
             image.preserveAspect = true;
             equipmentName.text   = armor.armor.name;
             showedArmor          = armor;
         }
         else
         {
             image.gameObject.SetActive(false);
             equipmentName.text = "None";
         }
     }
     else
     {
         image.gameObject.SetActive(false);
         equipmentName.text = "None";
     }
 }
Beispiel #3
0
    public void GetArmor()
    {
        currentArmorStatus = PlayerArmor.Armored;

        // notify event
        GameEvents.Player.PlayerPickedArmor.SafeCall();
    }
 public void EquipEquipment(string equipmentType, string equipmentId, ref PlayerCharacter character)
 {
     if (equipmentType.ToLower() == "weapon")
     {
         for (int i = 0; i < Weapons.Count; i++)
         {
             if (Weapons[i].weapon.id == equipmentId)
             {
                 PlayerWeapon playerWeapon = Weapons[i];
                 character.EquipWeapon(ref playerWeapon);
                 Weapons[i] = playerWeapon;
                 break;
             }
         }
     }
     else if (equipmentType.ToLower() == "armor")
     {
         for (int i = 0; i < Armors.Count; i++)
         {
             if (Armors[i].armor.id == equipmentId)
             {
                 PlayerArmor playerArmor = Armors[i];
                 character.EquipArmor(ref playerArmor);
                 Armors[i] = playerArmor;
                 break;
             }
         }
     }
     else
     {
         Debug.LogError("Target Item is not an Equipment!");
     }
 }
Beispiel #5
0
    public void OnShowInventory()
    {
        scrollView.verticalScrollbar.value = 1;
        int i = 0;

        for (int j = 0; j < PlayerManager.Instance.Usables.Count;)
        {
            PlayerUsable temp = PlayerManager.Instance.Usables[j];
            itemList[i].OnShow(temp.usable.id, "usable", temp.amount);
            j++;
            i++;
        }
        for (int j = 0; j < PlayerManager.Instance.Weapons.Count;)
        {
            PlayerWeapon temp = PlayerManager.Instance.Weapons[j];
            itemList[i].OnShow(temp.weapon.id, "weapon", 0);
            j++;
            i++;
        }
        for (int j = 0; j < PlayerManager.Instance.Armors.Count;)
        {
            PlayerArmor temp = PlayerManager.Instance.Armors[j];
            itemList[i].OnShow(temp.armor.id, "armor", 0);
            j++;
            i++;
        }
        for (; i < itemList.Count; i++)
        {
            itemList[i].OnShow(null, "null", 0);
        }
    }
Beispiel #6
0
 // Use this for initialization
 void Start()
 {
     playerArmor     = GetComponent <PlayerArmor>();
     playerInventory = GetComponent <PlayerInventory>();
     properties      = GetComponent <PlayerProperties>();
     duffleImage     = UIElement.GetComponent <Image>();
     playerAmmo      = GetComponent <PlayerAmmo>();
 }
Beispiel #7
0
    private void Die()
    {
        // change sprites
        currentArmorStatus = PlayerArmor.Dead;

        // call events
        GameEvents.Player.PlayerDied.SafeCall();
    }
Beispiel #8
0
    void Start()
    {
        playerController = GetComponentInParent <playerController>();
        currentArmor     = armor.GetComponent <PlayerArmor>();
        currentWeapon    = playerController.gameObject.GetComponentInChildren <PlayerWeapon>();

        storedArmor.Add(currentArmor.currentArmor);
        storedWeapons.Add(currentWeapon.currentWeapon);
    }
Beispiel #9
0
    void Awake()
    {
        textAnim           = deadText.GetComponent <Animator>();
        playerMovement     = GetComponent <PlayerMovement>();
        playerArmor        = GetComponent <PlayerArmor>();
        currentHealth      = startHealth;
        HealthBar.maxValue = startHealth;

        UpdateBars();
    }
Beispiel #10
0
    public void DealDamage(int damage)
    {
        if (!isLocalPlayer)
        {
            return;
        }

        PlayerArmor  cArmor  = GetComponent <PlayerArmor>();
        PlayerHealth cHealth = GetComponent <PlayerHealth>();

        //Если броня и жизни включены
        if (cArmor.enabled && cHealth.enabled)
        {
            //Если броня равняется 0
            if (cArmor.Value == 0)
            {
                //... то вычесть из жизней
                cHealth.Value -= damage;
            }
            else
            {
                //Если броня больше чем урон
                if (cArmor.Value > damage)
                {
                    //... то вычесть из брони
                    cArmor.Value -= damage;
                }
                else
                {
                    //Иначе расчитать остаток урона на жизни
                    int remains = damage - cArmor.Value;
                    cArmor.Value   = 0;
                    cHealth.Value -= remains;
                }
            }
        }
        //Если жизни включены, то нанести урон
        else if (cHealth.enabled)
        {
            cHealth.Value -= damage;
        }

        //Если жизни включены
        if (cHealth.enabled)
        {
            //И они равны 0
            if (cHealth.Value == 0)
            {
                //То игрок умирает
                isDead = true;
                OnDead(isDead);
            }
        }
    }
Beispiel #11
0
    private void LoseArmor()
    {
        // remove armor
        currentArmorStatus = PlayerArmor.Naked;
        breakableArmor.Break();

        // call events
        GameEvents.Player.PlayerTookDamage.SafeCall();

        // make invincible
        this.WaitAndAct(afterDamageInvincibleDuration, () => isReceivingDamage = true);
    }
Beispiel #12
0
    void Start()
    {
        //Sets playerArmor to the toplevel transform (The Player Object)
        playerArmor = transform.root.GetComponent <PlayerArmor>();

        #region Fills all arrays with their respective type
        //The object displayArmor is attached to has a first spot child not related to the buttons/images, so we skip over it
        for (int i = 0; i < 6; i++)
        {
            armorButtons[i]    = transform.GetChild(i).GetComponent <Button>();
            backGroundImage[i] = transform.GetChild(i).GetChild(0).GetComponent <Image>();
            armorImage[i]      = transform.GetChild(i).GetChild(1).GetComponent <Image>();
        }
        #endregion
    }
Beispiel #13
0
    private void OnEnable()
    {
        health    = GetComponent <PlayerHealth>();
        hudHealth = GetComponent <HudHealth>();
        armor     = GetComponent <PlayerArmor>();
        hudArmor  = GetComponent <HudArmor>();
        view      = GetComponent <PlayerViewSystem>();
        shoot     = GetComponent <PlayerCombatShootingSystem>();
        movement  = GetComponent <PlayerMovementSystem>();

        //Events
        OnDead             += StatusDead;
        health.ChangedHP   += hudHealth.ChangeHealth;
        armor.ChangedArmor += hudArmor.ChangeArmor;

        StatusDead(true);
    }
Beispiel #14
0
 private void RessetStats()
 {
     PlayerPrefs.SetInt("PlayerHp", 3);
     PlayerPrefs.SetInt("PlayerArmor", 0);
     PlayerPrefs.SetInt("PlayerStepCounter", 0);
     PlayerPrefs.SetInt("SpecialCounter", 0);
     PlayerHp          = 3;
     PlayerArmor       = 0;
     PlayerStepCounter = 0;
     MageCounter       = 0;
     if (PlayerHpObject == null)
     {
         return;
     }
     SpecialCounter.GetComponentInChildren <TextMeshProUGUI>().text    = MageCounter.ToString();
     PlayerHpObject.GetComponentInChildren <TextMeshProUGUI>().text    = PlayerHp.ToString();
     PlayerArmorObject.GetComponentInChildren <TextMeshProUGUI>().text = PlayerArmor.ToString();
     PlayerStepObject.GetComponentInChildren <TextMeshProUGUI>().text  = PlayerStepCounter.ToString();
 }
    void AddArmorStat(PlayerArmor piece)
    {
        if (piece.durability > 0)
        {
            battleStats.maxHp += piece.armor.stats.vitality * GameConfigs.HP_PER_VIT;
            battleStats.maxMp += piece.armor.stats.wisdom * GameConfigs.MP_PER_WIS;

            battleStats.eva  += piece.armor.stats.dexterity * GameConfigs.EVA_PER_DEX;
            battleStats.crit += piece.armor.stats.dexterity * GameConfigs.CRIT_PER_DEX;
            battleStats.spd  += piece.armor.stats.dexterity * GameConfigs.SPD_PER_DEX;

            battleStats.patk += piece.armor.stats.strength * GameConfigs.PATK_PER_STR;
            battleStats.matk += piece.armor.stats.intelligence * GameConfigs.MATK_PER_INT;

            battleStats.pdef += piece.armor.pdef + piece.armor.stats.endurance * GameConfigs.PDEF_PER_END;
            battleStats.mdef += piece.armor.mdef + piece.armor.stats.wisdom * GameConfigs.MDEF_PER_WIS;

            battleStats.fireRes      += piece.armor.stats.fireRes;
            battleStats.lightningRes += piece.armor.stats.lightningRes;
            battleStats.iceRes       += piece.armor.stats.iceRes;
            battleStats.holyRes      += piece.armor.stats.holyRes;
            battleStats.darkRes      += piece.armor.stats.darkRes;

            if (piece.armor.modification != null)
            {
                battleStats.maxHp += piece.armor.modification.hp;
                battleStats.maxMp += piece.armor.modification.mp;

                battleStats.eva  += piece.armor.modification.evasion;
                battleStats.crit += piece.armor.modification.crit;
                battleStats.spd  += piece.armor.modification.speed;

                battleStats.patk += piece.armor.modification.patk;
                battleStats.matk += piece.armor.modification.matk;

                battleStats.pdef += piece.armor.modification.pdef;
                battleStats.mdef += piece.armor.modification.mdef;
            }
        }
    }
Beispiel #16
0
    public void Start()
    {
        aS = GetComponent <AudioSource>();

        if (uiManager == null)
        {
            uiManager = FindObjectOfType <UIManager>();
        }

        mainCamera       = FindObjectOfType <Camera>();
        playerController = GetComponentInParent <PlayerController>();
        playerArmor      = GetComponent <PlayerArmor>();

        //This might have to change
        if (GameManager.Instance != null)
        {
            if (GameManager.Instance.GetCurrentLevel() == 1)
            {
                currentHealth = startingHealth;
            }
        }
    }
 public void EquipArmor(ref PlayerArmor piece)
 {
     for (int i = 0; i < armors.Count; i++)
     {
         if (armors[i].armor.aPiece == piece.armor.aPiece)
         {
             armors[i].owner = null;
             if (piece.owner != null)
             {
                 piece.owner.UnequipArmor(piece.armor.aPiece);
                 piece.owner.CalculateBattleStat();
             }
             piece.owner = this;
             armors.Remove(armors[i]);
             armors.Add(piece);
             CalculateBattleStat();
             return;
         }
     }
     armors.Add(piece);
     piece.owner = this;
     CalculateBattleStat();
 }
Beispiel #18
0
    void OnTriggerEnter2D(Collider2D target)
    {
        if (target.tag == "Enemy" || target.tag == "Enemy1")
        {
            GameObject  soldier     = GameObject.Find("Soldier");
            PlayerArmor playerArmor = soldier.GetComponent <PlayerArmor>();

            if (hit)
            {
                StartCoroutine(HitBoxOff());

                if (playerArmor.armor <= 0)
                {
                    if (target.name == "Enemy")
                    {
                        health -= 20;
                    }
                    else
                    {
                        health -= 50;
                    }
                }

                else
                {
                    if (target.tag == "Enemy")
                    {
                        playerArmor.ArmorReduction(20);
                    }
                    else
                    {
                        playerArmor.ArmorReduction(50);
                    }
                }
            }
        }
    }
Beispiel #19
0
 private void Start()
 {
     inventory    = GetComponentInChildren <Inventory>();
     playerArmor  = GetComponentInChildren <PlayerArmor>();
     playerWeapon = GetComponentInChildren <PlayerWeapon>();
 }
Beispiel #20
0
 public void Start()
 {
     playerController = GetComponentInParent <playerController>();
     playerArmor      = GetComponent <PlayerArmor>();
     currentHealth    = startingHealth;
 }