public Player(SpriteBatch spriteBatch, Soul game, AudioManager audioManager, string alias, EntityManager entityManager, InputManager controls) : base(spriteBatch, game, Constants.PLAYER_FILENAME, new Vector2(Constants.PLAYER_WIDTH, Constants.PLAYER_HEIGHT), alias, EntityType.PLAYER) { audio = audioManager; this.entityManager = entityManager; this.controls = controls; weapon = new PlayerWeapon(spriteBatch, game, (int)dimension.Y); weapon.Damage = damage; acceleration = new Vector2 (Constants.PLAYER_ACCELERATION); animationState = (int)PlayerAnimationState.IDLE; hitFx = new HitFX(game); warningGlow = new GlowFX(game, Constants.FLASH_EFFECT_RED_FILENAME, 0.05f, 0.1f, 0.9f); this.animation.FrameRate = 30; this.maxDeathLightDecay = int.Parse(game.lighting.getValue("PlayerDeath", "MaxDecay")); this.maxDeathPower = float.Parse(game.lighting.getValue("PlayerDeath", "MaxPower")); this.deathDecayScaleUp = int.Parse(game.lighting.getValue("PlayerDeath", "DecayScaleUp")); this.deathDecayScaleDown = int.Parse(game.lighting.getValue("PlayerDeath", "DecayScaleDown")); this.deathPowerScaleUp = float.Parse(game.lighting.getValue("PlayerDeath", "PowerScaleUp")); this.deathPowerScaleDown = float.Parse(game.lighting.getValue("PlayerDeath", "PowerScaleDown")); this.secondExplosionLight = int.Parse(game.lighting.getValue("PlayerDeath", "SecondExplosionLightSize")); this.secondExplosionLightScalar = int.Parse(game.lighting.getValue("PlayerDeath", "SecondExplosionLightScalar")); this.secondExplosionPower = float.Parse(game.lighting.getValue("PlayerDeath", "SecondExplosionPower")); this.secondExplosionPwrScalar = float.Parse(game.lighting.getValue("PlayerDeath", "SecondExplosionPowerScalar")); this.fadeOutLight = int.Parse(game.lighting.getValue("PlayerDeath", "FadeOutLightScalar")); this.fadeOutPower = float.Parse(game.lighting.getValue("PlayerDeath", "FadeOutPowerScalar")); this.healthLightMaxRadius = int.Parse(game.lighting.getValue("PlayerHealthLight", "MaxRadius")); this.healthLightMinRadius = int.Parse(game.lighting.getValue("PlayerHealthLight", "MinRadius")); this.playerMaxSpeed = float.Parse(game.constants.getValue("PLAYER", "SPEED")); this.healthPowerup = int.Parse(game.constants.getValue("HEALTH_POWERUP", "HEALTH")); this.tutorial = bool.Parse(game.config.getValue("General", "Tutorial")); this.animation.playOnce = true; this.animation.FrameRate = 150; this.currentHealthRadi = healthLightMaxRadius; this.playerHealthLight = new PlayerHealthLight(game, health); this.spriteFont = game.Content.Load<SpriteFont>(Constants.GUI_FONT); string key = game.config.getValue("Controls", "Shoot"); if (key == "Space") { lesserDemonTut = new TutorialString(spriteBatch, game, "shoot", spriteFont, key, Constants.TUTORIAL_BUTTON_FRAME_XLLARGE, new Vector2(120.0f, 0f)); } else if (key == "Enter") { lesserDemonTut = new TutorialSprite(spriteBatch, game, "shoot", Constants.TUTORIAL_BUTTON_ENTER, Constants.TUTORIAL_BUTTON_FRAME_ENTER, new Vector2(120.0f, 0f)); } else if (key == "LeftShift" || key == "RightShift" || key == "LeftAlt" || key == "RightAlt") { lesserDemonTut = new TutorialSprite(spriteBatch, game, "shoot", Constants.TUTORIAL_BUTTON_SHIFT, Constants.TUTORIAL_BUTTON_FRAME_LARGE, new Vector2(120.0f, 0f)); } else { lesserDemonTut = new TutorialString(spriteBatch, game, "shoot", spriteFont, key, Constants.TUTORIAL_BUTTON_FRAME, new Vector2(120.0f, 0f)); } pointLight = new PointLight() { Color = new Vector4(float.Parse(game.lighting.getValue("PlayerLight", "ColorR")), float.Parse(game.lighting.getValue("PlayerLight", "ColorG")), float.Parse(game.lighting.getValue("PlayerLight", "ColorB")), float.Parse(game.lighting.getValue("PlayerLight", "ColorA"))), Power = float.Parse(game.lighting.getValue("PlayerLight", "Power")), LightDecay = int.Parse(game.lighting.getValue("PlayerLight", "LightDecay")), Position = new Vector3(0f, 0f, float.Parse(game.lighting.getValue("PlayerLight", "ZPosition"))), IsEnabled = true, renderSpecular = bool.Parse(game.lighting.getValue("PlayerLight", "Specular")) }; }
public void AddTutorialWidget(TutorialWidget widget) { widgetList.Add(widget); }