public void LoadData(SaveDataBase saveData)
        {
            PlayerSaveData playerData = (PlayerSaveData)saveData;

            if (playerData == null)
            {
                return;
            }

            Transform playerTransform = transform;

            playerTransform.position = playerData.Position;
            playerTransform.rotation = playerData.Rotation;

            Health.SetCurrentHealth(playerData.CurrentHealth);

            foreach (ItemSaveData itemSaveData in playerData.ItemList)
            {
                ItemScriptable item = InventoryReferencer.Instance.GetItemReference(itemSaveData.Name);
                Inventory.AddItem(item, itemSaveData.Amount);
            }

            WeaponScriptable weapon = (WeaponScriptable)Inventory.FindItem(playerData.EquippedWeaponData.Name);

            if (!weapon)
            {
                return;
            }

            weapon.weaponStats = playerData.EquippedWeaponData.WeaponStats;
            WeaponHolder.EquipWeapon(weapon);
        }
        public void Initialize(WeaponHolder weaponHolder, WeaponScriptable weapon)
        {
            WeaponHolder = weaponHolder;
            Crosshair    = weaponHolder.Controller.CrosshairComponent;

            WeaponStats = weapon.WeaponStats;
        }
Beispiel #3
0
        public void EquipWeapon(WeaponScriptable weaponScriptable)
        {
            if (weaponScriptable == null)
            {
                return;
            }

            GameObject spawnedWeapon = Instantiate(weaponScriptable.itemPrefab, WeaponSocketLocation.position, WeaponSocketLocation.rotation, WeaponSocketLocation);

            if (!spawnedWeapon)
            {
                return;
            }

            WeaponComponent = spawnedWeapon.GetComponent <WeaponComponent>();
            if (!WeaponComponent)
            {
                return;
            }

            WeaponComponent.Initialize(this, weaponScriptable);

            PlayerEvents.Invoke_OnWeaponEquipped(WeaponComponent);

            GripIKLocation = WeaponComponent.GripLocation;
            PlayerAnimator.SetInteger(WeaponTypeHash, (int)WeaponComponent.WeaponInformation.WeaponType);
        }
        public void Initialize(WeaponHolder weaponHolder, WeaponScriptable weaponScriptable)
        {
            WeaponHolder       = weaponHolder;
            CrosshairComponent = weaponHolder.Crosshair;

            if (weaponScriptable)
            {
                WeaponStats = weaponScriptable.WeaponStats;
            }
        }
    public void Initialize(WeaponHolder _weaponHolder, WeaponScriptable weaponScript)
    {
        weaponHolder = _weaponHolder;
        crosshair    = weaponHolder.playerCrosshair;

        if (weaponScript)
        {
            weaponStats = weaponScript.weaponStats;
        }
    }
    void Update()
    {
        activeWeapon = Inventory.Instance.activeWeapon;

        if (Input.GetKeyDown(KeyCode.Mouse0))
        {
            if (canShoot)
            {
                StartCoroutine(Shoot());
            }
        }
    }
    private IEnumerator AvoidFreezeScreen(ColliderBridge bridgeCollider)
    {
        yield return(new WaitForEndOfFrame());

        WeaponScriptable managerWeaponPlayer = bridgeCollider.gameObject.GetComponent <ProjectileOwner>().gunShooted;

        GameManager.managerGame.damageArea.EffectArea(bridgeCollider.gameObject.transform.position, managerWeaponPlayer.distanceEnemy);


        if (bridgeCollider.gameObject.GetComponent <ProjectileFX>() != null)
        {
            bridgeCollider.gameObject.GetComponent <ProjectileFX>().ProjectileActive(bridgeCollider.gameObject.transform.position, bridgeCollider.gameObject.transform.rotation);
        }


        bridgeCollider.gameObject.SetActive(false);
    }
    public void EquipWeapon(WeaponScriptable weaponScript)
    {
        GameObject spawnedWeapon = Instantiate(weaponScript.itemPrefab, weaponSocketLocation.position, weaponSocketLocation.rotation, weaponSocketLocation);

        if (spawnedWeapon)
        {
            weaponComponent = spawnedWeapon.GetComponent <WeaponComponent>();
            if (equippedWeapon)
            {
                equippedWeapon.Initialize(this, weaponScript);

                PlayerEvents.Invoke_OnWeaponEquippedEvent(equippedWeapon);

                playerAnimator.SetInteger(WeaponTypeHash, (int)equippedWeapon.weaponStats.weaponType);
                gripIKLocation = equippedWeapon.GripLocation;
            }
        }
    }
Beispiel #9
0
        public void EquipWeapon(WeaponScriptable weaponScriptable)
        {
            GameObject spawnedWeapon = Instantiate(weaponScriptable.ItemPrefab, WeaponSocket.position, WeaponSocket.rotation);

            if (!spawnedWeapon)
            {
                return;
            }

            spawnedWeapon.transform.parent = WeaponSocket;
            WeaponComponent = spawnedWeapon.GetComponent <WeaponComponent>();

            GripLocation = EquippedWeapon.HandPosition;

            EquippedWeapon.Initialize(this, weaponScriptable);
            PlayerAnimator.SetInteger(WeaponTypeHash, (int)EquippedWeapon.WeaponStats.WeaponType);

            PlayerEvents.Invoke_OnWeaponEquipped(EquippedWeapon);
        }
Beispiel #10
0
    public void EquipWeapon(WeaponScriptable weaponScripable)
    {
        GameObject spawnedWeapon = Instantiate(weaponScripable.ItemPrefab, WeaponSocketLocation.position, WeaponSocketLocation.rotation, WeaponSocketLocation);

        if (!spawnedWeapon)
        {
            return;
        }
        if (spawnedWeapon)
        {
            WeaponComponent = spawnedWeapon.GetComponent <WeaponComponent>();
            if (WeaponComponent)
            {
                GripIKLocation = WeaponComponent.GripLocation;
            }
        }

        WeaponComponent.Initialize(this, weaponScripable);
        PlayerAnimator.SetInteger("WeaponType", (int)WeaponComponent.WeaponStats.WeaponType);
        PlayerEvents.Invoke_OnWeaponEquipped(WeaponComponent);
    }
Beispiel #11
0
 void Start()
 {
     activeWeapon = weapons[0];
     weaponSpriteObject.sprite = activeWeapon.sprite;
     onWeaponSwitched         += SwitchWeapon; //switchWeapon subs to onWeaponSwitched
 }
Beispiel #12
0
 private void SwitchWeapon(object sender, OnWeaponSwitchedEventArgs e)
 {
     activeWeapon = weapons[e.selectedWeapon];
     weaponSpriteObject.sprite = activeWeapon.sprite;
 }
 public void SetCurrentWeapon(int index)
 {
     currentWeaponIndex = index;
     currentWeapon      = weapons[currentWeaponIndex];
     ingameCanvasManager.OnWeaponChanged(index);
 }
 void Start()
 {
     audioSource  = GetComponent <AudioSource>();
     activeWeapon = Inventory.Instance.activeWeapon;
 }