Beispiel #1
0
    // Token: 0x06000FFE RID: 4094 RVA: 0x00060A40 File Offset: 0x0005EC40
    public void PerformChargeJump()
    {
        float chargedJumpStrength = this.ChargedJumpStrength + this.ChargedJumpStrength * .10f * RandomizerBonus.Velocity();

        this.PlatformMovement.LocalSpeedY = chargedJumpStrength;
        this.OnJumpEvent(chargedJumpStrength);
        Sound.Play(this.JumpSound.GetSound(null), this.Sein.PlatformBehaviour.PlatformMovement.Position, null);
        this.UpwardsDeceleration.Deceleration = this.Deceleration;
        this.Sein.Mortality.DamageReciever.MakeInvincibleToEnemies(this.JumpDuration);
        this.ChangeState(SeinChargeJump.State.Jumping);
        this.Sein.PlatformBehaviour.Visuals.Animation.Play(this.JumpAnimation, 10, new Func <bool>(this.ShouldChargeJumpAnimationKeepPlaying));
        this.Sein.PlatformBehaviour.Visuals.SpriteRotater.BeginTiltLeftRightInAir(1.5f);
        if (this.Sein.PlatformBehaviour.JumpSustain)
        {
            this.Sein.PlatformBehaviour.JumpSustain.SetAmountOfSpeedToLose(this.PlatformMovement.LocalSpeedY, 1f);
        }
        this.Sein.Abilities.ChargeJumpCharging.EndCharge();
        JumpFlipPlatform.OnSeinChargeJumpEvent();
    }
    // Token: 0x0600124B RID: 4683 RVA: 0x00069BA4 File Offset: 0x00067DA4
    public void PerformChargeJump()
    {
        float chargedJumpStrength = this.ChargedJumpStrength + this.ChargedJumpStrength * 0.08f * (float)(RandomizerBonus.Velocity() + RandomizerBonus.Jumpgrades());

        this.PlatformMovement.LocalSpeedX = chargedJumpStrength * this.Arrow.transform.right.x;
        this.PlatformMovement.LocalSpeedY = chargedJumpStrength * this.Arrow.transform.right.y;
        Vector2 normalized = this.m_sein.PlatformBehaviour.PlatformMovement.LocalSpeed.normalized;

        this.m_angleDirection = Mathf.Atan2(normalized.y, Mathf.Abs(normalized.x)) * 57.29578f * (float)((normalized.x >= 0f) ? 1 : -1);
        Sound.Play(this.JumpSound.GetSound(null), this.m_sein.PlatformBehaviour.PlatformMovement.Position, null);
        this.m_sein.Mortality.DamageReciever.MakeInvincibleToEnemies(this.AntiGravityDuration);
        this.ChangeState(SeinWallChargeJump.State.Jumping);
        this.m_sein.FaceLeft = (this.PlatformMovement.LocalSpeedX < 0f);
        CharacterAnimationSystem.CharacterAnimationState characterAnimationState = this.m_sein.PlatformBehaviour.Visuals.Animation.Play(this.JumpAnimation, 10, new Func <bool>(this.ShouldChargeJumpAnimationKeepPlaying));
        characterAnimationState.OnStartPlaying = new Action(this.OnAnimationStart);
        characterAnimationState.OnStopPlaying  = new Action(this.OnAnimationEnd);
        this.m_sein.PlatformBehaviour.Visuals.SpriteRotater.BeginTiltUpDownInAir(1.5f);
        if (this.m_sein.Abilities.Glide)
        {
            this.m_sein.Abilities.Glide.NeedsRightTriggerReleased = true;
        }
        JumpFlipPlatform.OnSeinChargeJumpEvent();
        this.m_sein.Abilities.ChargeJumpCharging.EndCharge();
    }