Exemplo n.º 1
0
    void Update()
    {
        // TMP
        if (Input.GetKeyDown(KeyCode.R))
        {
            stats.ReceiveDamage(10);
        }
        if (Input.GetKeyDown(KeyCode.K))
        {
            if (GameCtr != null &&
                GameCtr.GetCurrentEnemies() != null &&
                GameCtr.GetCurrentEnemies()[0] != null &&
                GameCtr.GetCurrentEnemies()[0].stats != null)
            {
                GameCtr.GetCurrentEnemies()[0].stats.ReceiveDamage(GameCtr.GetCurrentEnemies()[0].stats.MaxHealth);
            }
        }



        stats.SetHealthBar(healthBar);
        stats.SetTurnTimeBar(turnTimeBar);
        if (GameCtr != null && GameCtr.IsInBattle())
        {
            stats.UpdateTurnTime(staticService.GetDeltaTime());
        }
    }
Exemplo n.º 2
0
    private IEnumerator StartGame()
    {
        float startVolume = source.volume;

        source.Play();


        source.volume = 0;
        while (source.volume < startVolume)
        {
            source.volume += startVolume * staticService.GetDeltaTime() / IntroFadeDuration;

            yield return(null);
        }

        source.volume = startVolume;
    }
Exemplo n.º 3
0
// ------------------------------------ helper methods -------------------------------------------------

    IUnityStaticService CreateUnityService(float deltaTimeReturn, float horizontalReturn, float verticalReturn)
    {
        IUnityStaticService s = Substitute.For <IUnityStaticService>();

        s.GetDeltaTime().Returns(deltaTimeReturn);
        s.GetInputAxis("Horizontal").Returns(horizontalReturn);
        s.GetInputAxis("Vertical").Returns(verticalReturn);

        return(s);
    }
Exemplo n.º 4
0
    // Spiel endet nach Abschluss der Animation -> Blackscreen && Thank you for playing canvas



    void Update()
    {
        if (player != null)
        {
            if (!isOpen)
            {
                float dist = player.GetDistanceToPlayer(this.transform.position);
                if (dist < openDistance)
                {
                    if (animator != null)
                    {
                        animator.SetTrigger("OpenChest");
                    }

                    if (gameCtr != null)
                    {
                        SoundEffectControl sfx = gameCtr.GetSFXControl();
                        if (sfx != null)
                        {
                            sfx.ChestOpen();
                        }
                    }

                    isOpen = true;
                    if (gameCtr != null)
                    {
                        gameCtr.outroPlaying = true;
                    }
                }
            }
            else
            {
                if (flareLight != null)
                {
                    if (flareLight.intensity < maxLightIntensity)
                    {
                        flareLight.intensity += staticService.GetDeltaTime() * lightIncreaseSpeed;
                        flareLight.intensity  = Mathf.Min(maxLightIntensity, flareLight.intensity);
                    }
                    else
                    {
                        if (gameCtr != null &&
                            !gameCtr.gameEnded)
                        {
                            gameCtr.InvokeGameEnd(2, flareLight);
                        }
                    }
                }
            }
        }
    }
Exemplo n.º 5
0
    void Update()
    {
        stats.SetHealthBar(healthBar);
        stats.SetTurnTimeBar(turnTimeBar);
        if (GameCtr != null && GameCtr.IsInBattle())
        {
            stats.UpdateTurnTime(staticService.GetDeltaTime());
        }

        if (GameCtr != null &&
            GameCtr.IsInBattle() &&
            autoAttack &&
            stats.CanAct() &&
            GameCtr.player != null &&
            GameCtr.player.stats.GetCurrentFighterState() != FighterState.dead &&
            GameCtr.TakesPartInCurrentBattle(this))
        {
            ChooseRandomBattleActionAndAct();
        }
    }
Exemplo n.º 6
0
    public void Test_PlayerCantMoveWhileInBattle()
    {
        PlayerStatsClass    stats         = new PlayerStatsClass();
        IUnityStaticService staticService = CreateUnityService(1, 1, 1);
        IGameController     ctr           = Substitute.For <IGameController>();

        ctr.IsInBattle().Returns(true);
        IPlayer mockPlayer = Substitute.For <IPlayer>();

        mockPlayer.GetGameController().Returns(ctr);
        stats.SetPlayerAddition(mockPlayer);

        Vector3 calculatedMovement = stats.CalcMovement(staticService.GetInputAxis("Horizontal"), staticService.GetInputAxis("Vertical"), staticService.GetDeltaTime());

        Assert.Zero(calculatedMovement.magnitude, "Player was able to move while in battle!");
    }
Exemplo n.º 7
0
    public void Test_PlayerDoesntMoveWithoutInput()
    {
        PlayerStatsClass    stats         = new PlayerStatsClass();
        IUnityStaticService staticService = CreateUnityService(1, 0, 0);

        Vector3 calculatedMovement = stats.CalcMovement(staticService.GetInputAxis("Horizontal"), staticService.GetInputAxis("Vertical"), staticService.GetDeltaTime());

        Assert.Zero(calculatedMovement.magnitude, "Player moved without input!");
    }
Exemplo n.º 8
0
    public void Test_PlayerMovementIsCalculatedCorrectly()
    {
        PlayerStatsClass    stats         = new PlayerStatsClass();
        IUnityStaticService staticService = CreateUnityService(1, 1, 1);

        float expectedX = staticService.GetInputAxis("Horizontal") * stats.playerSpeed * staticService.GetDeltaTime();
        float expectedY = 0;
        float expectedZ = staticService.GetInputAxis("Vertical") * stats.playerSpeed * staticService.GetDeltaTime();

        Vector3 calculatedMovement = stats.CalcMovement(staticService.GetInputAxis("Horizontal"), staticService.GetInputAxis("Vertical"), staticService.GetDeltaTime());

        Assert.NotZero(calculatedMovement.magnitude, "Player movement calculation resulted in no movement!");
        Assert.AreEqual(calculatedMovement.x, expectedX, "Player movement calculation did not return the expected x movement!");
        Assert.AreEqual(calculatedMovement.y, expectedY, "Player movement calculation did not return the expected y movement!");
        Assert.AreEqual(calculatedMovement.z, expectedZ, "Player movement calculation did not return the expected z movement!");
    }