Beispiel #1
0
    private void OnCollisionEnter2D(Collision2D collision)
    {
        var crate = collision.gameObject.GetComponent <Crate>();

        if (crate != null)
        {
            weaponHolder.EquipWeapon(crate.WeaponType);
        }
        var enemy = collision.gameObject.GetComponent <Enemy>();

        if (enemy != null)
        {
            DestroyPlayer();
        }
    }
Beispiel #2
0
    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 = InventoryReferences.instance.GetItemReference(itemSaveData.Name);
            inventory.AddItem(item, itemSaveData.amount);
        }

        if (playerData.equippedWeapon == null)
        {
            return;
        }

        WeaponScriptable weaponScript = (WeaponScriptable)inventory.FindItem(playerData.equippedWeapon.Name);

        if (!weaponScript)
        {
            return;
        }
        weaponScript.weaponStats = playerData.equippedWeapon.weaponStats;
        weaponHolder.EquipWeapon(weaponScript);
    }