예제 #1
0
    void Update()
    {
        if (!PauseControl.gameIsPaused)
        {
            if (contentToSpawn != null && !Input.GetKeyDown(KeyStrokeUtil.GetKeyStroke(contentToSpawn.PlayerPrefKey, contentToSpawn.DefaultKeyStroke)))
            {
                contentToSpawn = null;
            }

            if (contentToSpawn == null)
            {
                foreach (SpawnContentByShortcut spawnContent in spawnContents)
                {
                    spawnContent.timePassedDoNotTouch -= Time.deltaTime;
                    if (Input.GetKeyDown(KeyStrokeUtil.GetKeyStroke(spawnContent.PlayerPrefKey, spawnContent.DefaultKeyStroke)) && player.GetRewardAmountCollected() >= spawnContent.RewardCost && spawnContent.timePassedDoNotTouch <= 0f)
                    {
                        contentToSpawn = spawnContent;
                        spawnContent.timePassedDoNotTouch = spawnContent.CoolDown;
                        GameObject newInstance = PoolManager.Spawn(contentToSpawn.Prefab, player.GetMover().GetNavMeshAgent().destination);
                        if (!String.IsNullOrEmpty(contentToSpawn.SpawnSound))
                        {
                            FMODUnity.RuntimeManager.PlayOneShotAttached(contentToSpawn.SpawnSound, newInstance);
                        }
                        player.DecrementRewardCollected(contentToSpawn.RewardCost);
                    }
                }
            }
        }
    }
 private void CheckControl()
 {
     CheckOnRightClick();
     if (Input.GetKeyDown(KeyStrokeUtil.GetKeyStroke(PlayerPrefKey.AttackKeyStroke, DefaultKeyStroke.Attack)))
     {
         Attack();
     }
 }