コード例 #1
0
    private void HandleOfflineProgress()
    {
        if ((bool)dataSavingManager.GetOtherValue("UnlockedAuto"))
        {
            PlayerData playerData     = dataSavingManager.GetPlayerData();
            double     secondsOffline = (DateTime.Now - (DateTime)dataSavingManager.GetOtherValue("TimeStamp")).TotalSeconds;

            double blocksKilled;

            if (playerData.baseDamage >= blockHealth)
            {
                blocksKilled = secondsOffline / playerData.baseAttackSpeed;
            }
            else
            {
                double dps = (1 / playerData.baseAttackSpeed) * playerData.baseDamage;

                double totalDamage = secondsOffline * dps;
                blocksKilled = totalDamage / blockHealth;
            }

            double offlineReward = blocksKilled * blockKillReward * (double)dataSavingManager.GetOtherValue("OfflineMultiplier");

            Debug.LogWarning("seconds offline: " + secondsOffline);

            dataSavingManager.SetOtherValue("TimeStamp", DateTime.Now);
            dataSavingManager.Save();

            EventManager.TriggerEvent("OfflineProgress", offlineReward);
        }
        EventManager.TriggerEvent("BlockStatsUpdate", Tuple.Create(blockHealth, blockKillReward));
    }
コード例 #2
0
ファイル: Player.cs プロジェクト: AlexStew14/IncrementalRepo
    // Start is called before the first frame update
    private void Start()
    {
        soundManager      = GameObject.FindGameObjectWithTag("SoundManager").GetComponent <SoundManager>();
        dataSavingManager = GameObject.FindGameObjectWithTag("DataSavingManager").GetComponent <DataSavingManager>();
        blockSpawner      = GameObject.FindGameObjectWithTag("BlockSpawner").GetComponent <BlockSpawner>();

        playerData = dataSavingManager.GetPlayerData();
        var purchasedAbilities = dataSavingManager.GetAbilityDictionary().Values.Where(s => s.level > 0).ToList();

        purchasedPassives = purchasedAbilities.Where(a => a.abilityType == AbilityType.PASSIVE).ToList();
        purchasedActives  = purchasedAbilities.Where(a => a.abilityType == AbilityType.ACTIVE).ToList();

        transform.position = clickPos;

        finalMoveSpeed = playerData.baseMoveSpeed;

        //anim = character.GetComponent<Animator>();
        anim = gameObject.transform.GetChild(0).GetComponent <Animator>();
        //sprite = character.GetComponent<SpriteRenderer>();
        sprite = gameObject.transform.GetChild(0).GetComponent <SpriteRenderer>();

        abilityEffectsDict = new Dictionary <int, ParticleSystem>();
        appliedAbilities   = new Dictionary <string, double>();

        purchasedAbility = new UnityAction <object>(PurchasedAbility);
        EventManager.StartListening("PurchasedAbility", purchasedAbility);

        toggleAutoMove = new UnityAction <object>(ToggleAutoMove);
        EventManager.StartListening("ToggleAutoMove", toggleAutoMove);
    }
コード例 #3
0
    private void LoadPlayerStats(object unused)
    {
        PlayerData playerData        = dataSavingManager.GetPlayerData();
        double     autoMoveSpeedMult = (double)dataSavingManager.GetOtherValue("AutoMoveSpeedMultiplier");

        baseDamage.text        = NumberUtils.FormatLargeNumbers(playerData.baseDamage);
        damageMult.text        = NumberUtils.FormatLargeNumbers(playerData.prestigeDmgMultiplier);
        attackSpeed.text       = NumberUtils.FormatLargeNumbers(playerData.baseAttackSpeed);
        movementSpeed.text     = NumberUtils.FormatLargeNumbers(playerData.baseMoveSpeed);
        autoMovementSpeed.text = NumberUtils.FormatLargeNumbers(playerData.baseMoveSpeed * autoMoveSpeedMult);
    }
コード例 #4
0
ファイル: Player.cs プロジェクト: AlexStew14/IncrementalRepo
    public void ResetNonPrestige()
    {
        dataSavingManager.ResetPlayerNonPrestige();
        dataSavingManager.Save();

        var purchasedAbilities = dataSavingManager.GetAbilityDictionary().Values.Where(s => s.level > 0).ToList();

        purchasedPassives = purchasedAbilities.Where(a => a.abilityType == AbilityType.PASSIVE).ToList();
        purchasedActives  = purchasedAbilities.Where(a => a.abilityType == AbilityType.ACTIVE).ToList();

        playerData = dataSavingManager.GetPlayerData();
        EventManager.TriggerEvent("PlayerUpgraded");
    }