public void SetChestUnlocked() { if (ConditionType != 10 && ConditionType != 0) { m_player.AttachedLevel.ObjectiveComplete(); } State = 1; m_lockSprite.PlayAnimation(false); Tween.By(m_lockSprite, 0.2f, Linear.EaseNone, "Y", "40"); Tween.To(m_lockSprite, 0.2f, Linear.EaseNone, "delay", "0.1", "Opacity", "0"); }
public void CreateLog() { m_log.Position = Position; m_smoke.Position = Position; m_smoke.Visible = true; m_log.Visible = true; m_log.Opacity = 1f; m_smoke.PlayAnimation(false); Tween.By(m_log, 0.1f, Linear.EaseNone, "delay", "0.2", "Y", "10"); Tween.To(m_log, 0.2f, Linear.EaseNone, "delay", "0.3", "Opacity", "0"); SoundManager.Play3DSound(this, m_target, "Ninja_Teleport"); Visible = false; IsCollidable = false; IsWeighted = false; m_storedRoom = m_levelScreen.CurrentRoom; }
public override void Initialize() { foreach (var current in EnemyList) { if (current is EnemyObj_Fireball) { m_boss = (current as EnemyObj_Fireball); } current.Visible = false; current.PauseEnemy(true); } m_boss.ChangeSprite("EnemyGhostBossIdle_Character"); m_bossStartingScale = m_boss.ScaleX; m_fireList = new List <SpriteObj>(); var num = 0f; var num2 = 24f; for (var i = 0; i < 15; i++) { var spriteObj = new SpriteObj("GhostBossProjectile_Sprite"); spriteObj.PlayAnimation(); spriteObj.OutlineWidth = 2; spriteObj.Position = CDGMath.GetCirclePosition(num, 300f, m_boss.Position); spriteObj.Scale = new Vector2(2f, 2f); num += num2; spriteObj.Opacity = 0f; m_fireList.Add(spriteObj); GameObjList.Add(spriteObj); } base.Initialize(); }
public void Update(GameTime gameTime) { if (m_hammerAnimCounter <= 0f && !m_hammerSprite.IsAnimating) { m_hammerSprite.PlayAnimation(false); m_hammerAnimCounter = CDGMath.RandomFloat(0.5f, 3f); return; } m_hammerAnimCounter -= (float)gameTime.ElapsedGameTime.TotalSeconds; }
public override void LoadContent() { m_continueText = new KeyIconTextObj(Game.JunicodeFont); m_continueText.FontSize = 14f; m_continueText.Align = Types.TextAlign.Right; m_continueText.Opacity = 0f; m_continueText.Position = new Vector2(1270f, 30f); m_continueText.ForceDraw = true; var dropShadow = new Vector2(2f, 2f); var textureColor = new Color(255, 254, 128); m_dialoguePlate = new ObjContainer("DialogBox_Character"); m_dialoguePlate.Position = new Vector2(660f, 610f); m_dialoguePlate.ForceDraw = true; var textObj = new TextObj(Game.JunicodeFont); textObj.Align = Types.TextAlign.Centre; textObj.Text = "Your valor shown in battle shall never be forgotten."; textObj.FontSize = 18f; textObj.DropShadow = dropShadow; textObj.Position = new Vector2(0f, -(float)m_dialoguePlate.Height / 2 + 25); m_dialoguePlate.AddChild(textObj); var keyIconTextObj = new KeyIconTextObj(Game.JunicodeFont); keyIconTextObj.FontSize = 12f; keyIconTextObj.Align = Types.TextAlign.Centre; keyIconTextObj.Text = "\"Arrrrggghhhh\""; keyIconTextObj.DropShadow = dropShadow; keyIconTextObj.Y = 10f; keyIconTextObj.TextureColor = textureColor; m_dialoguePlate.AddChild(keyIconTextObj); var textObj2 = new TextObj(Game.JunicodeFont); textObj2.FontSize = 8f; textObj2.Text = "-Player X's parting words"; textObj2.Y = keyIconTextObj.Y; textObj2.Y += 40f; textObj2.X += 20f; textObj2.DropShadow = dropShadow; m_dialoguePlate.AddChild(textObj2); m_playerGhost = new SpriteObj("PlayerGhost_Sprite"); m_playerGhost.AnimationDelay = 0.1f; m_spotlight = new SpriteObj("GameOverSpotlight_Sprite"); m_spotlight.Rotation = 90f; m_spotlight.ForceDraw = true; m_spotlight.Position = new Vector2(660f, 40 + m_spotlight.Height); m_playerFrame = new LineageObj(null, true); m_playerFrame.DisablePlaque = true; m_king = new SpriteObj("King_Sprite"); m_king.OutlineWidth = 2; m_king.AnimationDelay = 0.1f; m_king.PlayAnimation(); m_king.Scale = new Vector2(2f, 2f); base.LoadContent(); }
public override void LoadContent() { m_filmGrain = new SpriteObj("FilmGrain_Sprite"); m_filmGrain.ForceDraw = true; m_filmGrain.Scale = new Vector2(2.015f, 2.05f); m_filmGrain.X -= 5f; m_filmGrain.Y -= 5f; m_filmGrain.PlayAnimation(); m_filmGrain.AnimationDelay = 0.0333333351f; base.LoadContent(); }
private void ShowSilhouette(bool showSanta) { if (m_levelScreen != null) { m_silhouetteFlying = true; m_silhouette.Rotation = 0f; m_silhouette.Flip = SpriteEffects.None; var flag = false; if (CDGMath.RandomInt(0, 1) > 0) { flag = true; } string[] array = { "GardenBat_Sprite", "GardenCrow_Sprite", "GardenBat_Sprite", "GardenCrow_Sprite", "GardenPerson_Sprite" }; if (!showSanta) { m_silhouette.ChangeSprite(array[CDGMath.RandomInt(0, 4)]); } else { m_silhouette.ChangeSprite("GardenSanta_Sprite"); } m_silhouette.PlayAnimation(); var arg_A7_0 = Vector2.Zero; if (flag) { m_silhouette.X = -(float)m_silhouette.Width; } else { m_silhouette.Flip = SpriteEffects.FlipHorizontally; m_silhouette.X = m_levelScreen.CurrentRoom.Width + m_silhouette.Width; } m_silhouette.Y = CDGMath.RandomFloat(100f, 500f); var num = m_levelScreen.CurrentRoom.Bounds.Width + m_silhouette.Width * 2; if (!flag) { num = -num; } Tween.By(m_silhouette, CDGMath.RandomFloat(10f, 15f), Tween.EaseNone, "X", num.ToString(), "Y", CDGMath.RandomInt(-200, 200).ToString()); Tween.AddEndHandlerToLastTween(this, "SilhouetteComplete"); } }
public override void OnEnter() { m_initialCameraPos = Camera.Position; SetObjectKilledPlayerText(); m_playerFrame.Opacity = 0f; m_playerFrame.Position = m_lastBoss.Position; m_playerFrame.SetTraits(Vector2.Zero); m_playerFrame.IsFemale = false; m_playerFrame.Class = 0; m_playerFrame.Y -= 120f; m_playerFrame.SetPortrait(8, 1, 1); m_playerFrame.UpdateData(); Tween.To(m_playerFrame, 1f, Tween.EaseNone, "delay", "4", "Opacity", "1"); SoundManager.StopMusic(0.5f); m_lockControls = false; SoundManager.PlaySound("Player_Death_FadeToBlack"); m_continueText.Text = "Press [Input:" + 0 + "] to move on"; m_lastBoss.Visible = true; m_lastBoss.Opacity = 1f; m_continueText.Opacity = 0f; m_dialoguePlate.Opacity = 0f; m_playerGhost.Opacity = 0f; m_spotlight.Opacity = 0f; m_playerGhost.Position = new Vector2(m_lastBoss.X - m_playerGhost.Width / 2, m_lastBoss.Bounds.Top - 20); Tween.RunFunction(3f, typeof(SoundManager), "PlaySound", "Player_Ghost"); Tween.To(m_playerGhost, 0.5f, Linear.EaseNone, "delay", "3", "Opacity", "0.4"); Tween.By(m_playerGhost, 2f, Linear.EaseNone, "delay", "3", "Y", "-150"); m_playerGhost.Opacity = 0.4f; Tween.To(m_playerGhost, 0.5f, Linear.EaseNone, "delay", "4", "Opacity", "0"); m_playerGhost.Opacity = 0f; m_playerGhost.PlayAnimation(); Tween.To(this, 0.5f, Linear.EaseNone, "BackBufferOpacity", "1"); Tween.To(m_spotlight, 0.1f, Linear.EaseNone, "delay", "1", "Opacity", "1"); Tween.AddEndHandlerToLastTween(typeof(SoundManager), "PlaySound", "Player_Death_Spotlight"); Tween.RunFunction(2f, typeof(SoundManager), "PlaySound", "FinalBoss_St1_DeathGrunt"); Tween.RunFunction(1.2f, typeof(SoundManager), "PlayMusic", "GameOverBossStinger", false, 0.5f); Tween.To(Camera, 1f, Quad.EaseInOut, "X", m_lastBoss.AbsX.ToString(), "Y", (m_lastBoss.Bounds.Bottom - 10).ToString()); Tween.RunFunction(2f, m_lastBoss, "PlayAnimation", false); (m_dialoguePlate.GetChildAt(2) as TextObj).Text = "The sun... I had forgotten how it feels..."; (m_dialoguePlate.GetChildAt(3) as TextObj).Text = "-" + m_lastBoss.Name + "'s Parting Words"; Tween.To(m_dialoguePlate, 0.5f, Tween.EaseNone, "delay", "2", "Opacity", "1"); Tween.RunFunction(4f, this, "DropStats"); Tween.To(m_continueText, 0.4f, Linear.EaseNone, "delay", "4", "Opacity", "1"); base.OnEnter(); }
private void InitializeProjectiles() { m_earthSummonInSprite = new ProjectileObj("WizardEarthSpellCast_Sprite"); m_earthSummonInSprite.AnimationDelay = 0.1f; m_earthSummonInSprite.PlayAnimation(); m_earthSummonInSprite.Scale = Vector2.Zero; m_earthSummonOutSprite = (m_earthSummonInSprite.Clone() as SpriteObj); m_earthSummonOutSprite.PlayAnimation(); m_earthProjectileObj = new ProjectileObj("WizardEarthSpell_Sprite"); m_earthProjectileObj.IsWeighted = false; m_earthProjectileObj.CollidesWithTerrain = false; m_earthProjectileObj.DestroysWithEnemy = false; m_earthProjectileObj.Damage = Damage; m_earthProjectileObj.Scale = ProjectileScale; m_earthProjectileObj.AnimationDelay = 0.05f; m_earthProjectileObj.Rotation = 0f; m_earthProjectileObj.CanBeFusRohDahed = false; }
public void SwitchType(byte type) { m_currentAttackType = type; switch (type) { case 0: m_shield.ChangeSprite("EnergonSwordShield_Sprite"); break; case 1: m_shield.ChangeSprite("EnergonShieldShield_Sprite"); break; case 2: m_shield.ChangeSprite("EnergonDownSwordShield_Sprite"); break; } m_shield.PlayAnimation(); }
public MapObj(bool followPlayer, ProceduralLevelScreen level) { m_level = level; FollowPlayer = followPlayer; Opacity = 0.3f; m_roomSpriteList = new List <SpriteObj>(); m_doorSpriteList = new List <SpriteObj>(); m_iconSpriteList = new List <SpriteObj>(); m_roomSpritePosList = new List <Vector2>(); m_doorSpritePosList = new List <Vector2>(); m_iconSpritePosList = new List <Vector2>(); CameraOffset = new Vector2(20f, 560f); m_playerSprite = new SpriteObj("MapPlayerIcon_Sprite"); m_playerSprite.AnimationDelay = 0.0333333351f; m_playerSprite.ForceDraw = true; m_playerSprite.PlayAnimation(); m_spriteScale = new Vector2(22f, 22.5f); AddedRoomsList = new List <RoomObj>(); m_teleporterList = new List <SpriteObj>(); m_teleporterPosList = new List <Vector2>(); }
public EnemyObj_Energon(PlayerObj target, PhysicsManager physicsManager, ProceduralLevelScreen levelToAttachTo, GameTypes.EnemyDifficulty difficulty) : base("EnemyEnergonIdle_Character", target, physicsManager, levelToAttachTo, difficulty) { Type = 23; m_shield = new SpriteObj("EnergonSwordShield_Sprite"); m_shield.AnimationDelay = 0.1f; m_shield.PlayAnimation(); m_shield.Opacity = 0.5f; m_shield.Scale = new Vector2(1.2f, 1.2f); m_projectilePool = new DS2DPool <EnergonProjectileObj>(); for (var i = 0; i < (int)m_poolSize; i++) { var energonProjectileObj = new EnergonProjectileObj("EnergonSwordProjectile_Sprite", this); energonProjectileObj.Visible = false; energonProjectileObj.CollidesWithTerrain = false; energonProjectileObj.PlayAnimation(); energonProjectileObj.AnimationDelay = 0.05f; m_projectilePool.AddToPool(energonProjectileObj); } }
public override void OnEnter() { m_playerFrame.Opacity = 0f; m_playerFrame.Position = m_player.Position; m_playerFrame.SetTraits(Game.PlayerStats.Traits); m_playerFrame.IsFemale = Game.PlayerStats.IsFemale; m_playerFrame.Class = Game.PlayerStats.Class; m_playerFrame.Y -= 120f; m_playerFrame.SetPortrait(Game.PlayerStats.HeadPiece, Game.PlayerStats.ShoulderPiece, Game.PlayerStats.ChestPiece); m_playerFrame.UpdateData(); Tween.To(m_playerFrame, 1f, Tween.EaseNone, "delay", "4", "Opacity", "1"); var item = new FamilyTreeNode { Name = Game.PlayerStats.PlayerName, Age = Game.PlayerStats.Age, ChildAge = Game.PlayerStats.ChildAge, Class = Game.PlayerStats.Class, HeadPiece = Game.PlayerStats.HeadPiece, ChestPiece = Game.PlayerStats.ChestPiece, ShoulderPiece = Game.PlayerStats.ShoulderPiece, NumEnemiesBeaten = Game.PlayerStats.NumEnemiesBeaten, BeatenABoss = Game.PlayerStats.NewBossBeaten, Traits = Game.PlayerStats.Traits, IsFemale = Game.PlayerStats.IsFemale }; var traits = Game.PlayerStats.Traits; Game.PlayerStats.FamilyTreeArray.Add(item); if (Game.PlayerStats.CurrentBranches != null) { Game.PlayerStats.CurrentBranches.Clear(); } Game.PlayerStats.IsDead = true; Game.PlayerStats.Traits = Vector2.Zero; Game.PlayerStats.NewBossBeaten = false; Game.PlayerStats.RerolledChildren = false; Game.PlayerStats.HasArchitectFee = false; Game.PlayerStats.NumEnemiesBeaten = 0; Game.PlayerStats.LichHealth = 0; Game.PlayerStats.LichMana = 0; Game.PlayerStats.LichHealthMod = 1f; Game.PlayerStats.TimesDead++; Game.PlayerStats.LoadStartingRoom = true; Game.PlayerStats.EnemiesKilledInRun.Clear(); if (Game.PlayerStats.SpecialItem != 1 && Game.PlayerStats.SpecialItem != 9 && Game.PlayerStats.SpecialItem != 10 && Game.PlayerStats.SpecialItem != 11 && Game.PlayerStats.SpecialItem != 12 && Game.PlayerStats.SpecialItem != 13) { Game.PlayerStats.SpecialItem = 0; } (ScreenManager.Game as Game).SaveManager.SaveFiles(SaveType.PlayerData, SaveType.Lineage, SaveType.MapData); (ScreenManager.Game as Game).SaveManager.SaveAllFileTypes(true); Game.PlayerStats.Traits = traits; if (Game.PlayerStats.TimesDead >= 20) { GameUtil.UnlockAchievement("FEAR_OF_LIFE"); } SoundManager.StopMusic(0.5f); m_droppingStats = false; m_lockControls = false; SoundManager.PlaySound("Player_Death_FadeToBlack"); m_continueText.Text = "Press [Input:" + 0 + "] to move on"; m_player.Visible = true; m_player.Opacity = 1f; m_continueText.Opacity = 0f; m_dialoguePlate.Opacity = 0f; m_playerGhost.Opacity = 0f; m_spotlight.Opacity = 0f; m_playerGhost.Position = new Vector2(m_player.X - m_playerGhost.Width / 2, m_player.Bounds.Top - 20); Tween.RunFunction(3f, typeof(SoundManager), "PlaySound", "Player_Ghost"); Tween.To(m_playerGhost, 0.5f, Linear.EaseNone, "delay", "3", "Opacity", "0.4"); Tween.By(m_playerGhost, 2f, Linear.EaseNone, "delay", "3", "Y", "-150"); m_playerGhost.Opacity = 0.4f; Tween.To(m_playerGhost, 0.5f, Linear.EaseNone, "delay", "4", "Opacity", "0"); m_playerGhost.Opacity = 0f; m_playerGhost.PlayAnimation(); Tween.To(this, 0.5f, Linear.EaseNone, "BackBufferOpacity", "1"); Tween.To(m_spotlight, 0.1f, Linear.EaseNone, "delay", "1", "Opacity", "1"); Tween.AddEndHandlerToLastTween(typeof(SoundManager), "PlaySound", "Player_Death_Spotlight"); Tween.RunFunction(1.2f, typeof(SoundManager), "PlayMusic", "GameOverStinger", false, 0.5f); Tween.To(Camera, 1f, Quad.EaseInOut, "X", m_player.AbsX.ToString(), "Y", (m_player.Bounds.Bottom - 10).ToString(), "Zoom", "1"); Tween.RunFunction(2f, m_player, "RunDeathAnimation1"); if (Game.PlayerStats.Traits.X == 13f || Game.PlayerStats.Traits.Y == 13f) { (m_dialoguePlate.GetChildAt(2) as TextObj).Text = "#)!(%*#@!%^"; (m_dialoguePlate.GetChildAt(2) as TextObj).RandomizeSentence(true); } else { (m_dialoguePlate.GetChildAt(2) as TextObj).Text = GameEV.GAME_HINTS[CDGMath.RandomInt(0, GameEV.GAME_HINTS.Length - 1)]; } (m_dialoguePlate.GetChildAt(3) as TextObj).Text = "-" + Game.PlayerStats.PlayerName + "'s Parting Words"; Tween.To(m_dialoguePlate, 0.5f, Tween.EaseNone, "delay", "2", "Opacity", "1"); Tween.RunFunction(4f, this, "DropStats"); Tween.To(m_continueText, 0.4f, Linear.EaseNone, "delay", "4", "Opacity", "1"); base.OnEnter(); }
public override void Initialize() { foreach (EnemyObj current in base.EnemyList) { if (current is EnemyObj_Fireball) { this.m_boss = (current as EnemyObj_Fireball); } current.Visible = false; current.PauseEnemy(true); } this.m_boss.ChangeSprite("EnemyGhostBossIdle_Character"); this.m_bossStartingScale = this.m_boss.ScaleX; this.m_fireList = new List<SpriteObj>(); float num = 0f; float num2 = 24f; for (int i = 0; i < 15; i++) { SpriteObj spriteObj = new SpriteObj("GhostBossProjectile_Sprite"); spriteObj.PlayAnimation(true); spriteObj.OutlineWidth = 2; spriteObj.Position = CDGMath.GetCirclePosition(num, 300f, this.m_boss.Position); spriteObj.Scale = new Vector2(2f, 2f); num += num2; spriteObj.Opacity = 0f; this.m_fireList.Add(spriteObj); base.GameObjList.Add(spriteObj); } base.Initialize(); }
public override void OnEnter() { m_tripStat1.Visible = false; m_tripStat2.Visible = false; m_tripStat1.Scale = Vector2.One; m_tripStat2.Scale = Vector2.One; if (m_itemType != 7) { (ScreenManager.Game as Game).SaveManager.SaveFiles(SaveType.PlayerData, SaveType.UpgradeData); } m_itemSprite.Rotation = 0f; m_itemSprite.Scale = Vector2.One; m_itemStartPos.X = m_itemStartPos.X - Camera.TopLeftCorner.X; m_itemStartPos.Y = m_itemStartPos.Y - Camera.TopLeftCorner.Y; m_storedMusicVolume = SoundManager.GlobalMusicVolume; m_songName = SoundManager.GetCurrentMusicName(); m_lockControls = true; m_continueText.Opacity = 0f; m_continueText.Text = "[Input:" + 0 + "] to continue"; m_itemFoundText.Position = m_itemEndPos; m_itemFoundText.Y += 70f; m_itemFoundText.Scale = Vector2.Zero; m_tripStat1FoundText.Position = m_itemFoundText.Position; m_tripStat2FoundText.Position = m_itemFoundText.Position; m_tripStat1FoundText.Scale = Vector2.Zero; m_tripStat2FoundText.Scale = Vector2.Zero; m_tripStat1FoundText.Visible = false; m_tripStat2FoundText.Visible = false; switch (m_itemType) { case 1: m_itemSpinning = true; m_itemSprite.ChangeSprite("BlueprintIcon_Sprite"); m_itemFoundSprite.ChangeSprite("BlueprintFoundText_Sprite"); m_itemFoundText.Text = EquipmentBaseType.ToString((int)m_itemInfo.Y) + " " + EquipmentCategoryType.ToString2((int)m_itemInfo.X); break; case 2: m_itemSpinning = true; m_itemSprite.ChangeSprite("RuneIcon_Sprite"); m_itemFoundSprite.ChangeSprite("RuneFoundText_Sprite"); m_itemFoundText.Text = EquipmentAbilityType.ToString((int)m_itemInfo.Y) + " Rune (" + EquipmentCategoryType.ToString2((int)m_itemInfo.X) + ")"; m_itemSprite.AnimationDelay = 0.05f; GameUtil.UnlockAchievement("LOVE_OF_MAGIC"); break; case 3: case 6: m_itemSprite.ChangeSprite(GetStatSpriteName((int)m_itemInfo.X)); m_itemFoundText.Text = GetStatText((int)m_itemInfo.X); m_itemSprite.AnimationDelay = 0.05f; m_itemFoundSprite.ChangeSprite("StatFoundText_Sprite"); if (m_itemType == 6) { m_tripStat1FoundText.Visible = true; m_tripStat2FoundText.Visible = true; m_tripStat1.ChangeSprite(GetStatSpriteName((int)m_tripStatData.X)); m_tripStat2.ChangeSprite(GetStatSpriteName((int)m_tripStatData.Y)); m_tripStat1.Visible = true; m_tripStat2.Visible = true; m_tripStat1.AnimationDelay = 0.05f; m_tripStat2.AnimationDelay = 0.05f; Tween.RunFunction(0.1f, m_tripStat1, "PlayAnimation", true); Tween.RunFunction(0.2f, m_tripStat2, "PlayAnimation", true); m_tripStat1FoundText.Text = GetStatText((int)m_tripStatData.X); m_tripStat2FoundText.Text = GetStatText((int)m_tripStatData.Y); m_itemFoundText.Y += 50f; m_tripStat1FoundText.Y = m_itemFoundText.Y + 50f; } break; case 4: m_itemSprite.ChangeSprite(SpellType.Icon((byte)m_itemInfo.X)); m_itemFoundSprite.ChangeSprite("SpellFoundText_Sprite"); m_itemFoundText.Text = SpellType.ToString((byte)m_itemInfo.X); break; case 5: m_itemSprite.ChangeSprite(SpecialItemType.SpriteName((byte)m_itemInfo.X)); m_itemFoundSprite.ChangeSprite("ItemFoundText_Sprite"); m_itemFoundText.Text = SpecialItemType.ToString((byte)m_itemInfo.X); break; case 7: m_itemSprite.ChangeSprite(GetMedallionImage((int)m_itemInfo.X)); m_itemFoundSprite.ChangeSprite("ItemFoundText_Sprite"); if (m_itemInfo.X == 19f) { m_itemFoundText.Text = "Medallion completed!"; } else { m_itemFoundText.Text = "You've collected a medallion piece!"; } break; } m_itemSprite.PlayAnimation(); ItemSpinAnimation(); base.OnEnter(); }
public override void LoadContent() { m_impactEffectPool.Initialize(); m_manor = new ObjContainer("TraitsCastle_Character"); m_manor.Scale = new Vector2(2f, 2f); m_manor.ForceDraw = true; for (var i = 0; i < m_manor.NumChildren; i++) { m_manor.GetChildAt(i).Visible = false; m_manor.GetChildAt(i).Opacity = 0f; } m_dialoguePlate = new ObjContainer("TraitsScreenPlate_Container"); m_dialoguePlate.ForceDraw = true; m_dialoguePlate.Position = new Vector2(1320 - m_dialoguePlate.Width / 2, 360f); m_skillIcon = new SpriteObj("Icon_Health_Up_Sprite"); m_skillIcon.Position = new Vector2(-110f, -200f); m_dialoguePlate.AddChild(m_skillIcon); m_skillTitle = new TextObj(Game.JunicodeFont); m_skillTitle.Text = "Skill name"; m_skillTitle.DropShadow = new Vector2(2f, 2f); m_skillTitle.TextureColor = new Color(236, 197, 132); m_skillTitle.Position = new Vector2(m_skillIcon.Bounds.Right + 15, m_skillIcon.Y); m_skillTitle.FontSize = 12f; m_dialoguePlate.AddChild(m_skillTitle); m_skillDescription = new TextObj(Game.JunicodeFont); m_skillDescription.Text = "Description text goes here. Let's see how well the word wrap function works."; m_skillDescription.Position = new Vector2(m_dialoguePlate.GetChildAt(1).X - 30f, m_dialoguePlate.GetChildAt(1).Bounds.Bottom + 20); m_skillDescription.FontSize = 10f; m_skillDescription.DropShadow = new Vector2(2f, 2f); m_skillDescription.TextureColor = new Color(228, 218, 208); m_skillDescription.WordWrap(m_dialoguePlate.Width - 50); m_dialoguePlate.AddChild(m_skillDescription); m_inputDescription = new KeyIconTextObj(Game.JunicodeFont); m_inputDescription.Text = "Input descriptions go here.."; m_inputDescription.Position = new Vector2(m_skillIcon.X - 30f, m_skillDescription.Bounds.Bottom + 20); m_inputDescription.FontSize = 10f; m_inputDescription.DropShadow = new Vector2(2f, 2f); m_inputDescription.TextureColor = new Color(228, 218, 208); m_inputDescription.WordWrap(m_dialoguePlate.Width - 50); m_dialoguePlate.AddChild(m_inputDescription); m_descriptionDivider = new SpriteObj("Blank_Sprite"); m_descriptionDivider.ScaleX = 250f / m_descriptionDivider.Width; m_descriptionDivider.ScaleY = 0.25f; m_descriptionDivider.ForceDraw = true; m_descriptionDivider.DropShadow = new Vector2(2f, 2f); m_skillCurrent = new TextObj(Game.JunicodeFont); m_skillCurrent.Position = new Vector2(m_inputDescription.X, m_inputDescription.Bounds.Bottom + 10); m_skillCurrent.FontSize = 10f; m_skillCurrent.DropShadow = new Vector2(2f, 2f); m_skillCurrent.TextureColor = new Color(228, 218, 208); m_skillCurrent.WordWrap(m_dialoguePlate.Width - 50); m_dialoguePlate.AddChild(m_skillCurrent); m_skillUpgrade = (m_skillCurrent.Clone() as TextObj); m_skillUpgrade.Y += 15f; m_dialoguePlate.AddChild(m_skillUpgrade); m_skillLevel = (m_skillUpgrade.Clone() as TextObj); m_skillLevel.Y += 15f; m_dialoguePlate.AddChild(m_skillLevel); m_skillCost = new TextObj(Game.JunicodeFont); m_skillCost.X = m_skillIcon.X; m_skillCost.Y = 182f; m_skillCost.FontSize = 10f; m_skillCost.DropShadow = new Vector2(2f, 2f); m_skillCost.TextureColor = Color.Yellow; m_dialoguePlate.AddChild(m_skillCost); m_skillCostBG = new SpriteObj("SkillTreeGoldIcon_Sprite"); m_skillCostBG.Position = new Vector2(-180f, 180f); m_dialoguePlate.AddChild(m_skillCostBG); m_dialoguePlate.ForceDraw = true; m_bg = new SpriteObj("TraitsBG_Sprite"); m_bg.Scale = new Vector2(1320f / m_bg.Width, 1320f / m_bg.Width); m_bg.ForceDraw = true; m_cloud1 = new SpriteObj("TraitsCloud1_Sprite") { ForceDraw = true }; m_cloud2 = new SpriteObj("TraitsCloud2_Sprite") { ForceDraw = true }; m_cloud3 = new SpriteObj("TraitsCloud3_Sprite") { ForceDraw = true }; m_cloud4 = new SpriteObj("TraitsCloud4_Sprite") { ForceDraw = true }; m_cloud5 = new SpriteObj("TraitsCloud5_Sprite") { ForceDraw = true }; var opacity = 1f; m_cloud1.Opacity = opacity; m_cloud2.Opacity = opacity; m_cloud3.Opacity = opacity; m_cloud4.Opacity = opacity; m_cloud5.Opacity = opacity; m_cloud1.Position = new Vector2(CDGMath.RandomInt(0, 1520), CDGMath.RandomInt(0, 360)); m_cloud2.Position = new Vector2(CDGMath.RandomInt(0, 1520), CDGMath.RandomInt(0, 360)); m_cloud3.Position = new Vector2(CDGMath.RandomInt(0, 1520), CDGMath.RandomInt(0, 360)); m_cloud4.Position = new Vector2(CDGMath.RandomInt(0, 1520), CDGMath.RandomInt(0, 360)); m_cloud5.Position = new Vector2(CDGMath.RandomInt(0, 1520), CDGMath.RandomInt(0, 360)); m_selectionIcon = new SpriteObj("IconHalo_Sprite"); m_selectionIcon.ForceDraw = true; m_selectionIcon.AnimationDelay = 0.1f; m_selectionIcon.PlayAnimation(); m_selectionIcon.Scale = new Vector2(1.1f, 1.1f); m_titleText = new SpriteObj("ManorTitleText_Sprite"); m_titleText.X = m_titleText.Width / 2f + 20f; m_titleText.Y = 64.8f; m_titleText.ForceDraw = true; m_continueText = new KeyIconTextObj(Game.JunicodeFont); m_continueText.ForceDraw = true; m_continueText.FontSize = 12f; m_continueText.DropShadow = new Vector2(2f, 2f); m_continueText.Position = new Vector2(1300f, 630f); m_continueText.Align = Types.TextAlign.Right; m_toggleIconsText = new KeyIconTextObj(Game.JunicodeFont); m_toggleIconsText.ForceDraw = true; m_toggleIconsText.FontSize = 12f; m_toggleIconsText.DropShadow = new Vector2(2f, 2f); m_toggleIconsText.Position = new Vector2(m_continueText.X, m_continueText.Y + 40f); m_toggleIconsText.Align = Types.TextAlign.Right; m_confirmText = new KeyIconTextObj(Game.JunicodeFont); m_confirmText.Align = Types.TextAlign.Right; m_confirmText.FontSize = 12f; m_confirmText.DropShadow = new Vector2(2f, 2f); m_confirmText.Position = new Vector2(1300f, 10f); m_confirmText.ForceDraw = true; m_navigationText = new KeyIconTextObj(Game.JunicodeFont); m_navigationText.Align = Types.TextAlign.Right; m_navigationText.FontSize = 12f; m_navigationText.DropShadow = new Vector2(2f, 2f); m_navigationText.Position = new Vector2(m_confirmText.X, m_confirmText.Y + 40f); m_navigationText.ForceDraw = true; m_coinIcon = new SpriteObj("CoinIcon_Sprite"); m_coinIcon.Position = new Vector2(1100f, 585f); m_coinIcon.Scale = new Vector2(0.9f, 0.9f); m_coinIcon.ForceDraw = true; m_playerMoney = new TextObj(Game.GoldFont); m_playerMoney.Align = Types.TextAlign.Left; m_playerMoney.Text = "1000"; m_playerMoney.FontSize = 30f; m_playerMoney.Position = new Vector2(m_coinIcon.X + 35f, m_coinIcon.Y); m_playerMoney.ForceDraw = true; base.LoadContent(); }
public void AddAllIcons(List <RoomObj> roomList) { foreach (var current in roomList) { if (!AddedRoomsList.Contains(current)) { if (current.Name != "Bonus") { using (var enumerator2 = current.GameObjList.GetEnumerator()) { while (enumerator2.MoveNext()) { var current2 = enumerator2.Current; var chestObj = current2 as ChestObj; if (chestObj != null) { SpriteObj spriteObj; if (chestObj.IsOpen) { spriteObj = new SpriteObj("MapChestUnlocked_Sprite"); } else if (chestObj is FairyChestObj) { spriteObj = new SpriteObj("MapFairyChestIcon_Sprite"); if ((chestObj as FairyChestObj).ConditionType == 10) { spriteObj.Opacity = 0.2f; } } else { spriteObj = new SpriteObj("MapLockedChestIcon_Sprite"); } m_iconSpriteList.Add(spriteObj); spriteObj.AnimationDelay = 0.0333333351f; spriteObj.PlayAnimation(); spriteObj.ForceDraw = true; spriteObj.Position = new Vector2(current2.X / m_spriteScale.X - 8f, current2.Y / m_spriteScale.Y - 12f); if (current.IsReversed) { spriteObj.X -= current2.Width / m_spriteScale.X; } m_iconSpritePosList.Add(spriteObj.Position); } } continue; } } if (current.Name == "Bonus") { var spriteObj2 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj2.PlayAnimation(); spriteObj2.AnimationDelay = 0.0333333351f; spriteObj2.ForceDraw = true; spriteObj2.Position = new Vector2((current.X + current.Width / 2f) / m_spriteScale.X - spriteObj2.Width / 2 - 1f, (current.Y + current.Height / 2f) / m_spriteScale.Y - spriteObj2.Height / 2 - 2f); m_iconSpriteList.Add(spriteObj2); m_iconSpritePosList.Add(spriteObj2.Position); } } } }
public void AddRoom(RoomObj room) { if (!AddedRoomsList.Contains(room) && room.Width / 1320 < 5) { var spriteObj = new SpriteObj(string.Concat("MapRoom", room.Width / 1320, "x", room.Height / 720, "_Sprite")); spriteObj.Position = new Vector2(room.X / m_spriteScale.X, room.Y / m_spriteScale.Y); spriteObj.Scale = new Vector2((spriteObj.Width - 3f) / spriteObj.Width, (spriteObj.Height - 3f) / spriteObj.Height); spriteObj.ForceDraw = true; spriteObj.TextureColor = room.TextureColor; m_roomSpriteList.Add(spriteObj); m_roomSpritePosList.Add(spriteObj.Position); foreach (var current in room.DoorList) { if (!(room.Name == "CastleEntrance") || !(current.DoorPosition == "Left")) { var flag = false; var spriteObj2 = new SpriteObj("MapDoor_Sprite"); spriteObj2.ForceDraw = true; string doorPosition; if ((doorPosition = current.DoorPosition) != null) { if (!(doorPosition == "Left")) { if (!(doorPosition == "Right")) { if (!(doorPosition == "Bottom")) { if (doorPosition == "Top") { spriteObj2.Rotation = -90f; spriteObj2.Position = new Vector2(current.X / m_spriteScale.X, current.Y / m_spriteScale.Y + 2f); flag = true; } } else { spriteObj2.Rotation = -90f; spriteObj2.Position = new Vector2(current.X / m_spriteScale.X, (current.Y + current.Height) / m_spriteScale.Y + 2f); flag = true; } } else { spriteObj2.Position = new Vector2(room.Bounds.Right / m_spriteScale.X - 5f, current.Y / m_spriteScale.Y - 2f); flag = true; } } else { spriteObj2.Position = new Vector2(room.Bounds.Left / m_spriteScale.X - spriteObj2.Width + 2f, current.Y / m_spriteScale.Y - 2f); flag = true; } } if (flag) { m_doorSpritePosList.Add(spriteObj2.Position); m_doorSpriteList.Add(spriteObj2); } } } if (room.Name != "Bonus" && Game.PlayerStats.Class != 13) { foreach (var current2 in room.GameObjList) { var chestObj = current2 as ChestObj; if (chestObj != null) { SpriteObj spriteObj3; if (chestObj.IsOpen) { spriteObj3 = new SpriteObj("MapChestUnlocked_Sprite"); } else if (chestObj is FairyChestObj) { spriteObj3 = new SpriteObj("MapFairyChestIcon_Sprite"); if ((chestObj as FairyChestObj).ConditionType == 10) { spriteObj3.Opacity = 0.2f; } } else { spriteObj3 = new SpriteObj("MapLockedChestIcon_Sprite"); } m_iconSpriteList.Add(spriteObj3); spriteObj3.AnimationDelay = 0.0333333351f; spriteObj3.PlayAnimation(); spriteObj3.ForceDraw = true; spriteObj3.Position = new Vector2(current2.X / m_spriteScale.X - 8f, current2.Y / m_spriteScale.Y - 12f); if (room.IsReversed) { spriteObj3.X -= current2.Width / m_spriteScale.X; } m_iconSpritePosList.Add(spriteObj3.Position); } } } if (room.Name == "EntranceBoss") { var spriteObj4 = new SpriteObj("MapBossIcon_Sprite"); spriteObj4.AnimationDelay = 0.0333333351f; spriteObj4.ForceDraw = true; spriteObj4.PlayAnimation(); spriteObj4.Position = new Vector2( (room.X + room.Width / 2f) / m_spriteScale.X - spriteObj4.Width / 2 - 1f, (room.Y + room.Height / 2f) / m_spriteScale.Y - spriteObj4.Height / 2 - 2f); m_iconSpriteList.Add(spriteObj4); m_iconSpritePosList.Add(spriteObj4.Position); m_teleporterList.Add(spriteObj4); m_teleporterPosList.Add(spriteObj4.Position); } else if (room.Name == "Linker") { var spriteObj5 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj5.AnimationDelay = 0.0333333351f; spriteObj5.ForceDraw = true; spriteObj5.PlayAnimation(); spriteObj5.Position = new Vector2( (room.X + room.Width / 2f) / m_spriteScale.X - spriteObj5.Width / 2 - 1f, (room.Y + room.Height / 2f) / m_spriteScale.Y - spriteObj5.Height / 2 - 2f); m_iconSpriteList.Add(spriteObj5); m_iconSpritePosList.Add(spriteObj5.Position); m_teleporterList.Add(spriteObj5); m_teleporterPosList.Add(spriteObj5.Position); } else if (room.Name == "CastleEntrance") { var spriteObj6 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj6.AnimationDelay = 0.0333333351f; spriteObj6.ForceDraw = true; spriteObj6.PlayAnimation(); spriteObj6.Position = new Vector2( (room.X + room.Width / 2f) / m_spriteScale.X - spriteObj6.Width / 2 - 1f, (room.Y + room.Height / 2f) / m_spriteScale.Y - spriteObj6.Height / 2 - 2f); m_iconSpriteList.Add(spriteObj6); m_iconSpritePosList.Add(spriteObj6.Position); m_teleporterList.Add(spriteObj6); m_teleporterPosList.Add(spriteObj6.Position); } if (Game.PlayerStats.Class != 13 && room.Name == "Bonus") { var spriteObj7 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj7.PlayAnimation(); spriteObj7.AnimationDelay = 0.0333333351f; spriteObj7.ForceDraw = true; spriteObj7.Position = new Vector2( (room.X + room.Width / 2f) / m_spriteScale.X - spriteObj7.Width / 2 - 1f, (room.Y + room.Height / 2f) / m_spriteScale.Y - spriteObj7.Height / 2 - 2f); m_iconSpriteList.Add(spriteObj7); m_iconSpritePosList.Add(spriteObj7.Position); } AddedRoomsList.Add(room); } }
public override void LoadContent() { m_blacksmithUI = new ObjContainer("BlacksmithUI_Character"); m_blacksmithUI.Position = new Vector2(660f, 360f); m_playerMoney = new TextObj(Game.GoldFont); m_playerMoney.Align = Types.TextAlign.Left; m_playerMoney.Text = "1000"; m_playerMoney.FontSize = 30f; m_playerMoney.OverrideParentScale = true; m_playerMoney.Position = new Vector2(210f, -225f); m_playerMoney.AnchorY = 10f; m_blacksmithUI.AddChild(m_playerMoney); for (var i = 0; i < m_blacksmithUI.NumChildren; i++) { m_blacksmithUI.GetChildAt(i).Scale = Vector2.Zero; } m_selectionIcon = new SpriteObj("BlacksmithUI_SelectionIcon_Sprite"); m_selectionIcon.PlayAnimation(); m_selectionIcon.Scale = Vector2.Zero; m_selectionIcon.AnimationDelay = 0.1f; m_selectionIcon.ForceDraw = true; m_equipmentDescriptionText = new TextObj(Game.JunicodeFont); m_equipmentDescriptionText.Align = Types.TextAlign.Centre; m_equipmentDescriptionText.FontSize = 12f; m_equipmentDescriptionText.Position = new Vector2(230f, -20f); m_equipmentDescriptionText.Text = "Select a category"; m_equipmentDescriptionText.WordWrap(190); m_equipmentDescriptionText.Scale = Vector2.Zero; m_blacksmithUI.AddChild(m_equipmentDescriptionText); foreach (var current in m_masterIconArray) { var absPosition = m_blacksmithUI.GetChildAt(6).AbsPosition; absPosition.X += 85f; var x = absPosition.X; var num = 70f; var num2 = 80f; for (var j = 0; j < current.Length; j++) { current[j] = new ObjContainer("BlacksmithUI_QuestionMarkIcon_Character"); current[j].Position = absPosition; current[j].Scale = Vector2.Zero; current[j].ForceDraw = true; absPosition.X += num; if (absPosition.X > x + num * 4f) { absPosition.X = x; absPosition.Y += num2; } } } InitializeTextObjs(); m_equippedIcon = new SpriteObj("BlacksmithUI_EquippedIcon_Sprite"); m_confirmText = new KeyIconTextObj(Game.JunicodeFont); m_confirmText.Text = "to close map"; m_confirmText.FontSize = 12f; m_confirmText.Position = new Vector2(50f, 550f); m_confirmText.ForceDraw = true; m_cancelText = new KeyIconTextObj(Game.JunicodeFont); m_cancelText.Text = "to re-center on player"; m_cancelText.FontSize = 12f; m_cancelText.Position = new Vector2(m_confirmText.X, m_confirmText.Y + 40f); m_cancelText.ForceDraw = true; m_navigationText = new KeyIconTextObj(Game.JunicodeFont); m_navigationText.Text = "to move map"; m_navigationText.FontSize = 12f; m_navigationText.Position = new Vector2(m_confirmText.X, m_confirmText.Y + 80f); m_navigationText.ForceDraw = true; m_newIconList = new List <SpriteObj>(); for (var k = 0; k < 25; k++) { var spriteObj = new SpriteObj("BlacksmithUI_NewIcon_Sprite"); spriteObj.Visible = false; spriteObj.Scale = new Vector2(1.1f, 1.1f); m_newIconList.Add(spriteObj); } base.LoadContent(); }
public override void LoadContent() { m_mapDisplay.InitializeAlphaMap(new Rectangle(50, 50, 1220, 620), Camera); m_mapDisplay.CameraOffset = new Vector2(660f, 360f); m_legend = new ObjContainer(); m_legend.ForceDraw = true; var spriteObj = new SpriteObj("TraitsScreenPlate_Sprite"); m_legend.AddChild(spriteObj); spriteObj.Scale = new Vector2(0.75f, 0.58f); var textObj = new TextObj(Game.JunicodeFont); textObj.Align = Types.TextAlign.Centre; textObj.Position = new Vector2(m_legend.Width / 2 * spriteObj.ScaleX, m_legend.Bounds.Top + 10); textObj.Text = "Legend"; textObj.FontSize = 12f; textObj.DropShadow = new Vector2(2f, 2f); textObj.TextureColor = new Color(213, 213, 173); m_legend.AddChild(textObj); m_legend.AnimationDelay = 0.0333333351f; m_legend.Position = new Vector2(1320 - m_legend.Width - 20, 720 - m_legend.Height - 20); var spriteObj2 = new SpriteObj("MapPlayerIcon_Sprite"); spriteObj2.Position = new Vector2(30f, 60f); spriteObj2.PlayAnimation(); m_legend.AddChild(spriteObj2); var num = 30; var spriteObj3 = new SpriteObj("MapBossIcon_Sprite"); spriteObj3.Position = new Vector2(spriteObj2.X, spriteObj2.Y + num); spriteObj3.PlayAnimation(); m_legend.AddChild(spriteObj3); var spriteObj4 = new SpriteObj("MapLockedChestIcon_Sprite"); spriteObj4.Position = new Vector2(spriteObj2.X, spriteObj3.Y + num); spriteObj4.PlayAnimation(); m_legend.AddChild(spriteObj4); var spriteObj5 = new SpriteObj("MapFairyChestIcon_Sprite"); spriteObj5.Position = new Vector2(spriteObj2.X, spriteObj4.Y + num); spriteObj5.PlayAnimation(); m_legend.AddChild(spriteObj5); var spriteObj6 = new SpriteObj("MapChestUnlocked_Sprite"); spriteObj6.Position = new Vector2(spriteObj2.X, spriteObj5.Y + num); m_legend.AddChild(spriteObj6); var spriteObj7 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj7.Position = new Vector2(spriteObj2.X, spriteObj6.Y + num); spriteObj7.PlayAnimation(); m_legend.AddChild(spriteObj7); var spriteObj8 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj8.Position = new Vector2(spriteObj2.X, spriteObj7.Y + num); spriteObj8.PlayAnimation(); m_legend.AddChild(spriteObj8); var textObj2 = new TextObj(Game.JunicodeFont); textObj2.Position = new Vector2(spriteObj2.X + 50f, 55f); textObj2.Text = "You are here \nBoss location \nUnopened chest \nFairy chest \nOpened chest \nTeleporter \nBonus Room"; textObj2.FontSize = 10f; textObj2.DropShadow = new Vector2(2f, 2f); m_legend.AddChild(textObj2); spriteObj2.X += 4f; spriteObj2.Y += 4f; m_titleText = new SpriteObj("TeleporterTitleText_Sprite"); m_titleText.ForceDraw = true; m_titleText.X = 660f; m_titleText.Y = 72f; m_playerIcon = new ObjContainer("PlayerWalking_Character"); m_playerIcon.Scale = new Vector2(0.6f, 0.6f); m_playerIcon.AnimationDelay = 0.1f; m_playerIcon.PlayAnimation(); m_playerIcon.ForceDraw = true; m_playerIcon.OutlineWidth = 2; m_playerIcon.GetChildAt(1).TextureColor = Color.Red; m_playerIcon.GetChildAt(7).TextureColor = Color.Red; m_playerIcon.GetChildAt(8).TextureColor = Color.Red; m_playerIcon.GetChildAt(16).Visible = false; m_playerIcon.GetChildAt(5).Visible = false; m_playerIcon.GetChildAt(13).Visible = false; m_playerIcon.GetChildAt(0).Visible = false; m_playerIcon.GetChildAt(15).Visible = false; m_playerIcon.GetChildAt(14).Visible = false; m_continueText = new KeyIconTextObj(Game.JunicodeFont); m_continueText.Text = "to close map"; m_continueText.FontSize = 12f; m_continueText.ForceDraw = true; m_continueText.Position = new Vector2(50f, 200 - m_continueText.Height - 40); m_recentreText = new KeyIconTextObj(Game.JunicodeFont); m_recentreText.Text = "to re-center on player"; m_recentreText.FontSize = 12f; m_recentreText.Position = new Vector2(m_continueText.X, 200 - m_continueText.Height - 80); m_recentreText.ForceDraw = true; m_navigationText = new KeyIconTextObj(Game.JunicodeFont); m_navigationText.Text = "to move map"; m_navigationText.FontSize = 12f; m_navigationText.Position = new Vector2(m_continueText.X, 200 - m_continueText.Height - 120); m_navigationText.ForceDraw = true; base.LoadContent(); }
public void AddAllIcons(List<RoomObj> roomList) { foreach (RoomObj current in roomList) { if (!this.m_addedRooms.Contains(current)) { if (current.Name != "Bonus") { using (List<GameObj>.Enumerator enumerator2 = current.GameObjList.GetEnumerator()) { while (enumerator2.MoveNext()) { GameObj current2 = enumerator2.Current; ChestObj chestObj = current2 as ChestObj; if (chestObj != null) { SpriteObj spriteObj; if (chestObj.IsOpen) { spriteObj = new SpriteObj("MapChestUnlocked_Sprite"); } else if (chestObj is FairyChestObj) { spriteObj = new SpriteObj("MapFairyChestIcon_Sprite"); if ((chestObj as FairyChestObj).ConditionType == 10) { spriteObj.Opacity = 0.2f; } } else { spriteObj = new SpriteObj("MapLockedChestIcon_Sprite"); } this.m_iconSpriteList.Add(spriteObj); spriteObj.AnimationDelay = 0.0333333351f; spriteObj.PlayAnimation(true); spriteObj.ForceDraw = true; spriteObj.Position = new Vector2(current2.X / this.m_spriteScale.X - 8f, current2.Y / this.m_spriteScale.Y - 12f); if (current.IsReversed) { spriteObj.X -= (float)current2.Width / this.m_spriteScale.X; } this.m_iconSpritePosList.Add(spriteObj.Position); } } continue; } } if (current.Name == "Bonus") { SpriteObj spriteObj2 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj2.PlayAnimation(true); spriteObj2.AnimationDelay = 0.0333333351f; spriteObj2.ForceDraw = true; spriteObj2.Position = new Vector2((current.X + (float)current.Width / 2f) / this.m_spriteScale.X - (float)(spriteObj2.Width / 2) - 1f, (current.Y + (float)current.Height / 2f) / this.m_spriteScale.Y - (float)(spriteObj2.Height / 2) - 2f); this.m_iconSpriteList.Add(spriteObj2); this.m_iconSpritePosList.Add(spriteObj2.Position); } } } }
public void AddRoom(RoomObj room) { if (!this.m_addedRooms.Contains(room) && room.Width / 1320 < 5) { SpriteObj spriteObj = new SpriteObj(string.Concat(new object[] { "MapRoom", room.Width / 1320, "x", room.Height / 720, "_Sprite" })); spriteObj.Position = new Vector2(room.X / this.m_spriteScale.X, room.Y / this.m_spriteScale.Y); spriteObj.Scale = new Vector2(((float)spriteObj.Width - 3f) / (float)spriteObj.Width, ((float)spriteObj.Height - 3f) / (float)spriteObj.Height); spriteObj.ForceDraw = true; spriteObj.TextureColor = room.TextureColor; this.m_roomSpriteList.Add(spriteObj); this.m_roomSpritePosList.Add(spriteObj.Position); foreach (DoorObj current in room.DoorList) { if (!(room.Name == "CastleEntrance") || !(current.DoorPosition == "Left")) { bool flag = false; SpriteObj spriteObj2 = new SpriteObj("MapDoor_Sprite"); spriteObj2.ForceDraw = true; string doorPosition; if ((doorPosition = current.DoorPosition) != null) { if (!(doorPosition == "Left")) { if (!(doorPosition == "Right")) { if (!(doorPosition == "Bottom")) { if (doorPosition == "Top") { spriteObj2.Rotation = -90f; spriteObj2.Position = new Vector2(current.X / this.m_spriteScale.X, current.Y / this.m_spriteScale.Y + 2f); flag = true; } } else { spriteObj2.Rotation = -90f; spriteObj2.Position = new Vector2(current.X / this.m_spriteScale.X, (current.Y + (float)current.Height) / this.m_spriteScale.Y + 2f); flag = true; } } else { spriteObj2.Position = new Vector2((float)room.Bounds.Right / this.m_spriteScale.X - 5f, current.Y / this.m_spriteScale.Y - 2f); flag = true; } } else { spriteObj2.Position = new Vector2((float)room.Bounds.Left / this.m_spriteScale.X - (float)spriteObj2.Width + 2f, current.Y / this.m_spriteScale.Y - 2f); flag = true; } } if (flag) { this.m_doorSpritePosList.Add(spriteObj2.Position); this.m_doorSpriteList.Add(spriteObj2); } } } if (room.Name != "Bonus" && Game.PlayerStats.Class != 13) { foreach (GameObj current2 in room.GameObjList) { ChestObj chestObj = current2 as ChestObj; if (chestObj != null) { SpriteObj spriteObj3; if (chestObj.IsOpen) { spriteObj3 = new SpriteObj("MapChestUnlocked_Sprite"); } else if (chestObj is FairyChestObj) { spriteObj3 = new SpriteObj("MapFairyChestIcon_Sprite"); if ((chestObj as FairyChestObj).ConditionType == 10) { spriteObj3.Opacity = 0.2f; } } else { spriteObj3 = new SpriteObj("MapLockedChestIcon_Sprite"); } this.m_iconSpriteList.Add(spriteObj3); spriteObj3.AnimationDelay = 0.0333333351f; spriteObj3.PlayAnimation(true); spriteObj3.ForceDraw = true; spriteObj3.Position = new Vector2(current2.X / this.m_spriteScale.X - 8f, current2.Y / this.m_spriteScale.Y - 12f); if (room.IsReversed) { spriteObj3.X -= (float)current2.Width / this.m_spriteScale.X; } this.m_iconSpritePosList.Add(spriteObj3.Position); } } } if (room.Name == "EntranceBoss") { SpriteObj spriteObj4 = new SpriteObj("MapBossIcon_Sprite"); spriteObj4.AnimationDelay = 0.0333333351f; spriteObj4.ForceDraw = true; spriteObj4.PlayAnimation(true); spriteObj4.Position = new Vector2((room.X + (float)room.Width / 2f) / this.m_spriteScale.X - (float)(spriteObj4.Width / 2) - 1f, (room.Y + (float)room.Height / 2f) / this.m_spriteScale.Y - (float)(spriteObj4.Height / 2) - 2f); this.m_iconSpriteList.Add(spriteObj4); this.m_iconSpritePosList.Add(spriteObj4.Position); this.m_teleporterList.Add(spriteObj4); this.m_teleporterPosList.Add(spriteObj4.Position); } else if (room.Name == "Linker") { SpriteObj spriteObj5 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj5.AnimationDelay = 0.0333333351f; spriteObj5.ForceDraw = true; spriteObj5.PlayAnimation(true); spriteObj5.Position = new Vector2((room.X + (float)room.Width / 2f) / this.m_spriteScale.X - (float)(spriteObj5.Width / 2) - 1f, (room.Y + (float)room.Height / 2f) / this.m_spriteScale.Y - (float)(spriteObj5.Height / 2) - 2f); this.m_iconSpriteList.Add(spriteObj5); this.m_iconSpritePosList.Add(spriteObj5.Position); this.m_teleporterList.Add(spriteObj5); this.m_teleporterPosList.Add(spriteObj5.Position); } else if (room.Name == "CastleEntrance") { SpriteObj spriteObj6 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj6.AnimationDelay = 0.0333333351f; spriteObj6.ForceDraw = true; spriteObj6.PlayAnimation(true); spriteObj6.Position = new Vector2((room.X + (float)room.Width / 2f) / this.m_spriteScale.X - (float)(spriteObj6.Width / 2) - 1f, (room.Y + (float)room.Height / 2f) / this.m_spriteScale.Y - (float)(spriteObj6.Height / 2) - 2f); this.m_iconSpriteList.Add(spriteObj6); this.m_iconSpritePosList.Add(spriteObj6.Position); this.m_teleporterList.Add(spriteObj6); this.m_teleporterPosList.Add(spriteObj6.Position); } if (Game.PlayerStats.Class != 13 && room.Name == "Bonus") { SpriteObj spriteObj7 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj7.PlayAnimation(true); spriteObj7.AnimationDelay = 0.0333333351f; spriteObj7.ForceDraw = true; spriteObj7.Position = new Vector2((room.X + (float)room.Width / 2f) / this.m_spriteScale.X - (float)(spriteObj7.Width / 2) - 1f, (room.Y + (float)room.Height / 2f) / this.m_spriteScale.Y - (float)(spriteObj7.Height / 2) - 2f); this.m_iconSpriteList.Add(spriteObj7); this.m_iconSpritePosList.Add(spriteObj7.Position); } this.m_addedRooms.Add(room); } }
public override void LoadContent() { this.m_mapDisplay.InitializeAlphaMap(new Rectangle(50, 50, 1220, 620), base.Camera); this.m_mapDisplay.CameraOffset = new Vector2(660f, 360f); this.m_legend = new ObjContainer(); this.m_legend.ForceDraw = true; SpriteObj spriteObj = new SpriteObj("TraitsScreenPlate_Sprite"); this.m_legend.AddChild(spriteObj); spriteObj.Scale = new Vector2(0.75f, 0.58f); TextObj textObj = new TextObj(Game.JunicodeFont); textObj.Align = Types.TextAlign.Centre; textObj.Position = new Vector2((float)(this.m_legend.Width / 2) * spriteObj.ScaleX, (float)(this.m_legend.Bounds.Top + 10)); textObj.Text = "Legend"; textObj.FontSize = 12f; textObj.DropShadow = new Vector2(2f, 2f); textObj.TextureColor = new Color(213, 213, 173); this.m_legend.AddChild(textObj); this.m_legend.AnimationDelay = 0.0333333351f; this.m_legend.Position = new Vector2((float)(1320 - this.m_legend.Width - 20), (float)(720 - this.m_legend.Height - 20)); SpriteObj spriteObj2 = new SpriteObj("MapPlayerIcon_Sprite"); spriteObj2.Position = new Vector2(30f, 60f); spriteObj2.PlayAnimation(true); this.m_legend.AddChild(spriteObj2); int num = 30; SpriteObj spriteObj3 = new SpriteObj("MapBossIcon_Sprite"); spriteObj3.Position = new Vector2(spriteObj2.X, spriteObj2.Y + (float)num); spriteObj3.PlayAnimation(true); this.m_legend.AddChild(spriteObj3); SpriteObj spriteObj4 = new SpriteObj("MapLockedChestIcon_Sprite"); spriteObj4.Position = new Vector2(spriteObj2.X, spriteObj3.Y + (float)num); spriteObj4.PlayAnimation(true); this.m_legend.AddChild(spriteObj4); SpriteObj spriteObj5 = new SpriteObj("MapFairyChestIcon_Sprite"); spriteObj5.Position = new Vector2(spriteObj2.X, spriteObj4.Y + (float)num); spriteObj5.PlayAnimation(true); this.m_legend.AddChild(spriteObj5); SpriteObj spriteObj6 = new SpriteObj("MapChestUnlocked_Sprite"); spriteObj6.Position = new Vector2(spriteObj2.X, spriteObj5.Y + (float)num); this.m_legend.AddChild(spriteObj6); SpriteObj spriteObj7 = new SpriteObj("MapTeleporterIcon_Sprite"); spriteObj7.Position = new Vector2(spriteObj2.X, spriteObj6.Y + (float)num); spriteObj7.PlayAnimation(true); this.m_legend.AddChild(spriteObj7); SpriteObj spriteObj8 = new SpriteObj("MapBonusIcon_Sprite"); spriteObj8.Position = new Vector2(spriteObj2.X, spriteObj7.Y + (float)num); spriteObj8.PlayAnimation(true); this.m_legend.AddChild(spriteObj8); TextObj textObj2 = new TextObj(Game.JunicodeFont); textObj2.Position = new Vector2(spriteObj2.X + 50f, 55f); textObj2.Text = "You are here \nBoss location \nUnopened chest \nFairy chest \nOpened chest \nTeleporter \nBonus Room"; textObj2.FontSize = 10f; textObj2.DropShadow = new Vector2(2f, 2f); this.m_legend.AddChild(textObj2); spriteObj2.X += 4f; spriteObj2.Y += 4f; this.m_titleText = new SpriteObj("TeleporterTitleText_Sprite"); this.m_titleText.ForceDraw = true; this.m_titleText.X = 660f; this.m_titleText.Y = 72f; this.m_playerIcon = new ObjContainer("PlayerWalking_Character"); this.m_playerIcon.Scale = new Vector2(0.6f, 0.6f); this.m_playerIcon.AnimationDelay = 0.1f; this.m_playerIcon.PlayAnimation(true); this.m_playerIcon.ForceDraw = true; this.m_playerIcon.OutlineWidth = 2; this.m_playerIcon.GetChildAt(1).TextureColor = Color.Red; this.m_playerIcon.GetChildAt(7).TextureColor = Color.Red; this.m_playerIcon.GetChildAt(8).TextureColor = Color.Red; this.m_playerIcon.GetChildAt(16).Visible = false; this.m_playerIcon.GetChildAt(5).Visible = false; this.m_playerIcon.GetChildAt(13).Visible = false; this.m_playerIcon.GetChildAt(0).Visible = false; this.m_playerIcon.GetChildAt(15).Visible = false; this.m_playerIcon.GetChildAt(14).Visible = false; this.m_continueText = new KeyIconTextObj(Game.JunicodeFont); this.m_continueText.Text = "to close map"; this.m_continueText.FontSize = 12f; this.m_continueText.ForceDraw = true; this.m_continueText.Position = new Vector2(50f, (float)(200 - this.m_continueText.Height - 40)); this.m_recentreText = new KeyIconTextObj(Game.JunicodeFont); this.m_recentreText.Text = "to re-center on player"; this.m_recentreText.FontSize = 12f; this.m_recentreText.Position = new Vector2(this.m_continueText.X, (float)(200 - this.m_continueText.Height - 80)); this.m_recentreText.ForceDraw = true; this.m_navigationText = new KeyIconTextObj(Game.JunicodeFont); this.m_navigationText.Text = "to move map"; this.m_navigationText.FontSize = 12f; this.m_navigationText.Position = new Vector2(this.m_continueText.X, (float)(200 - this.m_continueText.Height - 120)); this.m_navigationText.ForceDraw = true; base.LoadContent(); }