public override void Update(float deltaTime) { if (!hasRunOnce) { level.getInputSystem().addKey(glideKey); //level.getInputSystem().addKey(blockSpawnKey); level.getInputSystem().addKey(speedyKey); level.getInputSystem().addKey(cycleDownPowerupKey); //level.getInputSystem().addKey(cycleUpPowerupKey); level.getInputSystem().addKey(equippedPowerupKey); level.getInputSystem().addKey(bounceKey); hasRunOnce = true; } if (glideActive) { VelocityComponent velComp = (VelocityComponent)this.level.getPlayer().getComponent(GlobalVars.VELOCITY_COMPONENT_NAME); if (velComp.y > maxVelocity) { velComp.setVelocity(velComp.x, maxVelocity); } glideTimer = glideTimer - deltaTime; if (glideTimer < 0.0f) { GravityComponent gravComp = (GravityComponent)this.level.getPlayer().getComponent(GlobalVars.GRAVITY_COMPONENT_NAME); gravComp.setGravity(gravComp.x, GlobalVars.STANDARD_GRAVITY); glideActive = false; glideTimer = glideDuration; } } if (speedyTimer > 0) { if (level.getPlayer() == null) { return; } speedyTimer -= deltaTime; if (!level.getPlayer().hasComponent(GlobalVars.VELOCITY_COMPONENT_NAME)) { return; } VelocityComponent velComp = (VelocityComponent)this.level.getPlayer().getComponent(GlobalVars.VELOCITY_COMPONENT_NAME); if (speedyTimer <= 0 || Math.Abs(velComp.x) < GlobalVars.SPEEDY_SPEED) { velComp.setVelocity(0, velComp.y); speedyTimer = -1; speedyActive = false; if (!level.getPlayer().hasComponent(GlobalVars.PLAYER_INPUT_COMPONENT_NAME)) { level.getPlayer().addComponent(new PlayerInputComponent(level.getPlayer())); } } } checkForInput(); }
public void glide() { GravityComponent gravComp = (GravityComponent)this.level.getPlayer().getComponent(GlobalVars.GRAVITY_COMPONENT_NAME); gravComp.setGravity(gravComp.x, (Glide_Gravity_Decrease)); glideActive = true; }
public void glide() { if (level.getPlayer() == null) { return; } if (!level.getPlayer().hasComponent(GlobalVars.GRAVITY_COMPONENT_NAME)) { return; } GravityComponent gravComp = ( GravityComponent )this.level.getPlayer().getComponent(GlobalVars.GRAVITY_COMPONENT_NAME); gravComp.setGravity(gravComp.x, (Glide_Gravity_Decrease)); glideActive = true; }
public void manageGlideTimer(float deltaTime) { if (glideActive && level.getPlayer() != null) { VelocityComponent velComp = ( VelocityComponent )this.level.getPlayer().getComponent(GlobalVars.VELOCITY_COMPONENT_NAME); if (velComp.y > maxVelocity) { velComp.setVelocity(velComp.x, maxVelocity); } glideTimer = glideTimer - deltaTime; if (glideTimer < 0.0f) { GravityComponent gravComp = ( GravityComponent )this.level.getPlayer().getComponent(GlobalVars.GRAVITY_COMPONENT_NAME); if (gravComp != null) { gravComp.setGravity(gravComp.x, GlobalVars.STANDARD_GRAVITY); } glideActive = false; glideTimer = glideDuration; } } }