Example #1
0
 private void RandomizeItem()
 {
     if (Game.PlayerStats.Class != 16 && Game.PlayerStats.Class != 17)
     {
         var spellList = ClassType.GetSpellList(Game.PlayerStats.Class);
         do
         {
             Spell = spellList[CDGMath.RandomInt(0, spellList.Length - 1)];
         } while ((Game.PlayerStats.Traits.X == 31f || Game.PlayerStats.Traits.Y == 31f) &&
                  (Spell == 6 || Spell == 4 || Spell == 11));
         Array.Clear(spellList, 0, spellList.Length);
         ID = Spell;
     }
     else if (Game.PlayerStats.Class == 16)
     {
         ID    = 13;
         Spell = 13;
     }
     else if (Game.PlayerStats.Class == 17)
     {
         ID    = 14;
         Spell = 14;
     }
     m_icon.ChangeSprite(SpellType.Icon(Spell));
 }
Example #2
0
        public override void Update(GameTime gameTime)
        {
            if (m_bossDoorOpening && !Player.ControlsLocked)
            {
                Player.LockControls();
            }
            if (!SoundManager.IsMusicPlaying)
            {
                SoundManager.PlayMusic("CastleSong", true);
            }
            if (Player.X < m_castleGate.Bounds.Right)
            {
                Player.X = m_castleGate.Bounds.Right + 20;
                Player.AttachedLevel.UpdateCamera();
            }
            var bounds = m_diary.Bounds;

            bounds.X        -= 50;
            bounds.Width    += 100;
            m_speechBubble.Y = m_diary.Y - m_speechBubble.Height - 20f - 30f +
                               (float)Math.Sin(Game.TotalGameTime * 20f) * 2f;
            if (CollisionMath.Intersects(Player.Bounds, bounds) && Player.IsTouchingGround)
            {
                if (m_speechBubble.SpriteName == "ExclamationSquare_Sprite")
                {
                    m_speechBubble.ChangeSprite("UpArrowSquare_Sprite");
                }
            }
            else if (m_speechBubble.SpriteName == "UpArrowSquare_Sprite")
            {
                m_speechBubble.ChangeSprite("ExclamationSquare_Sprite");
            }
            if (Game.PlayerStats.DiaryEntry < 1 || CollisionMath.Intersects(Player.Bounds, bounds))
            {
                m_speechBubble.Visible = true;
            }
            else if (Game.PlayerStats.DiaryEntry >= 1 && !CollisionMath.Intersects(Player.Bounds, bounds))
            {
                m_speechBubble.Visible = false;
            }
            if (CollisionMath.Intersects(Player.Bounds, bounds) && Player.IsTouchingGround &&
                (Game.GlobalInput.JustPressed(16) || Game.GlobalInput.JustPressed(17)))
            {
                if (Game.PlayerStats.DiaryEntry < 1)
                {
                    var rCScreenManager = Player.AttachedLevel.ScreenManager as RCScreenManager;
                    rCScreenManager.DialogueScreen.SetDialogue("DiaryEntry0");
                    rCScreenManager.DisplayScreen(13, true);
                    var expr_24E = Game.PlayerStats;
                    expr_24E.DiaryEntry += 1;
                }
                else
                {
                    var rCScreenManager2 = Player.AttachedLevel.ScreenManager as RCScreenManager;
                    rCScreenManager2.DisplayScreen(20, true);
                }
            }
            base.Update(gameTime);
        }
Example #3
0
        public override void Update(GameTime gameTime)
        {
            m_speechBubble.Y = m_diary.Y - m_speechBubble.Height - 20f - 30f +
                               (float)Math.Sin(Game.TotalGameTime * 20f) * 2f;
            var bounds = m_diary.Bounds;

            bounds.X     -= 50;
            bounds.Width += 100;
            if (!CollisionMath.Intersects(Player.Bounds, bounds) && m_speechBubble.SpriteName == "UpArrowSquare_Sprite")
            {
                m_speechBubble.ChangeSprite("ExclamationSquare_Sprite");
            }
            if (!RoomCompleted || CollisionMath.Intersects(Player.Bounds, bounds))
            {
                m_speechBubble.Visible = true;
            }
            else if (RoomCompleted && !CollisionMath.Intersects(Player.Bounds, bounds))
            {
                m_speechBubble.Visible = false;
            }
            if (m_diaryIndex >= 24)
            {
                m_speechBubble.Visible = false;
            }
            if (CollisionMath.Intersects(Player.Bounds, bounds) && Player.IsTouchingGround)
            {
                if (m_speechBubble.SpriteName == "ExclamationSquare_Sprite")
                {
                    m_speechBubble.ChangeSprite("UpArrowSquare_Sprite");
                }
                if (Game.GlobalInput.JustPressed(16) || Game.GlobalInput.JustPressed(17))
                {
                    if (!RoomCompleted && Game.PlayerStats.DiaryEntry < 24)
                    {
                        var rCScreenManager = Player.AttachedLevel.ScreenManager as RCScreenManager;
                        rCScreenManager.DialogueScreen.SetDialogue("DiaryEntry" + m_diaryIndex);
                        rCScreenManager.DisplayScreen(13, true);
                        var expr_1DB = Game.PlayerStats;
                        expr_1DB.DiaryEntry += 1;
                        RoomCompleted        = true;
                    }
                    else
                    {
                        RoomCompleted = true;
                        var rCScreenManager2 = Player.AttachedLevel.ScreenManager as RCScreenManager;
                        rCScreenManager2.DisplayScreen(20, true);
                    }
                }
            }
            base.Update(gameTime);
        }
Example #4
0
 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");
     }
 }
Example #5
0
 public override void OnEnter()
 {
     if (!RoomCompleted && ID == -1)
     {
         m_portraitIndex = CDGMath.RandomInt(0, 7);
         m_portrait.ChangeSprite("Portrait" + m_portraitIndex + "_Sprite");
         ID = m_portraitIndex;
         base.OnEnter();
         return;
     }
     if (ID != -1)
     {
         m_portraitIndex = ID;
         m_portrait.ChangeSprite("Portrait" + m_portraitIndex + "_Sprite");
     }
 }
Example #6
0
        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();
        }
Example #7
0
 public override void BossCleanup()
 {
     Player.StopAllSpells();
     Game.PlayerStats.NewBossBeaten = true;
     m_bossDoorSprite.ChangeSprite("CastleDoorOpen_Sprite");
     m_bossDoor.Locked = false;
     SoundManager.PlaySound("FinalBoss_St2_WeatherChange_b");
     DropGold();
     AddEnemyKilled();
 }
Example #8
0
 public void UpdateSpecialItemIcon()
 {
     m_specialItemIcon.Visible = false;
     m_iconHolder2.Opacity     = 0.5f;
     if (Game.PlayerStats.SpecialItem != 0)
     {
         m_specialItemIcon.Visible = true;
         m_specialItemIcon.ChangeSprite(SpecialItemType.SpriteName(Game.PlayerStats.SpecialItem));
         m_iconHolder2.Opacity = 1f;
     }
 }
Example #9
0
 public override void OnEnter()
 {
     m_speechBubble.Visible = false;
     m_diary.Visible        = false;
     m_doorSprite.ChangeSprite("CastleDoorOpen_Sprite");
     if (Game.PlayerStats.TutorialComplete)
     {
         if (!Game.PlayerStats.ReadLastDiary)
         {
             m_door.Locked = true;
             m_doorSprite.ChangeSprite("CastleDoor_Sprite");
         }
         else
         {
             m_door.Locked = false;
         }
         m_diary.Visible = true;
         Player.UpdateCollisionBoxes();
         Player.Position = new Vector2(X + 240f + Player.Width,
                                       Bounds.Bottom - 120 - (Player.Bounds.Bottom - Player.Y));
     }
     m_creditsTitleText.Opacity = 0f;
     m_creditsText.Opacity      = 0f;
     foreach (var current in EnemyList)
     {
         current.Damage = 0;
     }
     m_tutorialText.Opacity = 0f;
     Player.UnlockControls();
     if (!Game.PlayerStats.TutorialComplete)
     {
         SoundManager.PlayMusic("EndSong", true, 4f);
     }
     else
     {
         SoundManager.StopMusic(4f);
     }
     Tween.RunFunction(2f, Player.AttachedLevel, "DisplayCreditsText", true);
     base.OnEnter();
 }
Example #10
0
 private void RandomizeItem()
 {
     if (Game.PlayerStats.Traits.X == 3f || Game.PlayerStats.Traits.Y == 3f || Game.PlayerStats.Traits.X == 4f ||
         Game.PlayerStats.Traits.Y == 4f || Game.PlayerStats.Traits.X == 20f || Game.PlayerStats.Traits.Y == 20f ||
         Game.PlayerStats.Traits.X == 1f || Game.PlayerStats.Traits.Y == 1f || Game.PlayerStats.Traits.X == 29f ||
         Game.PlayerStats.Traits.Y == 29f)
     {
         if (CDGMath.RandomInt(1, 100) <= 30)
         {
             ItemType = 8;
         }
         else
         {
             ItemType = GetRandomItem();
         }
     }
     else
     {
         ItemType = GetRandomItem();
     }
     m_icon.ChangeSprite(SpecialItemType.SpriteName(ItemType));
     ID = ItemType;
 }
Example #11
0
        public override void OnEnter()
        {
            SoundManager.PlaySound("StatCard_In");
            LoadCardColour();
            m_spellIcon.ChangeSprite(SpellType.Icon(Game.PlayerStats.Spell));
            string[] array =
            {
                "CardCastleBG_Sprite",
                "CardGardenBG_Sprite",
                "CardDungeonBG_Sprite",
                "CardTowerBG_Sprite"
            };
            m_playerBG.ChangeSprite(array[CDGMath.RandomInt(0, 3)]);
            m_frontCard.Y = 1500f;
            m_backCard.Y  = 1500f;
            Tween.To(this, 0.2f, Tween.EaseNone, "BackBufferOpacity", "0.7");
            Tween.To(m_frontCard, 0.4f, Back.EaseOut, "Y", "30");
            Tween.To(m_backCard, 0.4f, Back.EaseOut, "delay", "0.2", "Y", "30");
            var player = (ScreenManager as RCScreenManager).Player;

            LoadFrontCardStats(player);
            LoadBackCardStats(player);
            ChangeParts(player);
            m_playerHUD.Update(player);
            if (InputManager.GamePadIsConnected(PlayerIndex.One))
            {
                m_cancelText.ForcedScale = new Vector2(0.7f, 0.7f);
            }
            else
            {
                m_cancelText.ForcedScale = new Vector2(1f, 1f);
            }
            m_cancelText.Text    = "[Input:" + 2 + "] to exit profile card";
            m_cancelText.Opacity = 0f;
            Tween.To(m_cancelText, 0.2f, Tween.EaseNone, "Opacity", "1");
            string[] array2 =
            {
                "Glauber Kotaki",
                "Kenny Lee",
                "Teddy Lee",
                "Gordon McGladdery",
                "Judson Cowan"
            };
            m_author.Text = array2[CDGMath.RandomInt(0, array2.Length - 1)];
            Array.Clear(array2, 0, array2.Length);
            base.OnEnter();
        }
Example #12
0
 public void UpdateSpellIcon()
 {
     m_spellIcon.Visible   = false;
     m_iconHolder1.Opacity = 0.5f;
     m_spellCost.Visible   = false;
     if (Game.PlayerStats.Spell != 0)
     {
         m_spellIcon.ChangeSprite(SpellType.Icon(Game.PlayerStats.Spell));
         m_spellIcon.Visible   = true;
         m_iconHolder1.Opacity = 1f;
         m_spellCost.Text      =
             (int)
             (SpellEV.GetManaCost(Game.PlayerStats.Spell) *
              (1f - SkillSystem.GetSkill(SkillType.Mana_Cost_Down).ModifierAmount)) + " mp";
         m_spellCost.Visible = true;
     }
 }
Example #13
0
 public override void Initialize()
 {
     foreach (var current in GameObjList)
     {
         if (current.Name == "portrait")
         {
             m_portraitFrame = (current as SpriteObj);
             break;
         }
     }
     m_portraitFrame.ChangeSprite("GiantPortrait_Sprite");
     m_portraitFrame.Scale = new Vector2(2f, 2f);
     m_portrait            = new SpriteObj("Blank_Sprite");
     m_portrait.Position   = m_portraitFrame.Position;
     m_portrait.Scale      = new Vector2(0.95f, 0.95f);
     GameObjList.Add(m_portrait);
     base.Initialize();
 }
Example #14
0
        public override void LoadContent(GraphicsDevice graphics)
        {
            m_continueText           = new KeyIconTextObj(Game.JunicodeFont);
            m_continueText.FontSize  = 14f;
            m_continueText.Align     = Types.TextAlign.Right;
            m_continueText.Position  = new Vector2(1270f, 650f);
            m_continueText.ForceDraw = true;
            m_continueText.Opacity   = 0f;
            m_background             = new BackgroundObj("LineageScreenBG_Sprite");
            m_background.SetRepeated(true, true, Game.ScreenManager.Camera);
            m_background.X           -= 6600f;
            m_background.Opacity      = 0.7f;
            m_endingMask              = new SpriteObj("Blank_Sprite");
            m_endingMask.ForceDraw    = true;
            m_endingMask.TextureColor = Color.Black;
            m_endingMask.Scale        = new Vector2(1330f / m_endingMask.Width, 730f / m_endingMask.Height);
            m_cameraPosList           = new List <Vector2>();
            m_frameList      = new List <SpriteObj>();
            m_nameList       = new List <TextObj>();
            m_slainCountText = new List <TextObj>();
            foreach (var current in GameObjList)
            {
                if (current is WaypointObj)
                {
                    m_cameraPosList.Add(default(Vector2));
                }
            }
            var cultureInfo = (CultureInfo)CultureInfo.CurrentCulture.Clone();

            cultureInfo.NumberFormat.CurrencyDecimalSeparator = ".";
            foreach (var current2 in GameObjList)
            {
                if (current2 is WaypointObj)
                {
                    var index = int.Parse(current2.Name, NumberStyles.Any, cultureInfo);
                    m_cameraPosList[index] = current2.Position;
                }
            }
            var num = 150f;

            foreach (var current3 in EnemyList)
            {
                current3.Initialize();
                current3.PauseEnemy(true);
                current3.IsWeighted = false;
                current3.PlayAnimation();
                current3.UpdateCollisionBoxes();
                var spriteObj = new SpriteObj("LineageScreenFrame_Sprite");
                spriteObj.DropShadow = new Vector2(4f, 6f);
                if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                {
                    spriteObj.ChangeSprite("GiantPortrait_Sprite");
                    FixMiniboss(current3);
                }
                spriteObj.Scale = new Vector2((current3.Width + num) / spriteObj.Width,
                                              (current3.Height + num) / spriteObj.Height);
                if (spriteObj.ScaleX < 1f)
                {
                    spriteObj.ScaleX = 1f;
                }
                if (spriteObj.ScaleY < 1f)
                {
                    spriteObj.ScaleY = 1f;
                }
                spriteObj.Position = new Vector2(current3.X, current3.Bounds.Top + current3.Height / 2f);
                m_frameList.Add(spriteObj);
                var textObj = new TextObj(Game.JunicodeFont);
                textObj.FontSize      = 12f;
                textObj.Align         = Types.TextAlign.Centre;
                textObj.Text          = current3.Name;
                textObj.OutlineColour = new Color(181, 142, 39);
                textObj.OutlineWidth  = 2;
                textObj.Position      = new Vector2(spriteObj.X, spriteObj.Bounds.Bottom + 40);
                m_nameList.Add(textObj);
                var textObj2 = new TextObj(Game.JunicodeFont);
                textObj2.FontSize      = 10f;
                textObj2.Align         = Types.TextAlign.Centre;
                textObj2.OutlineColour = new Color(181, 142, 39);
                textObj2.Text          = "Slain: 0";
                textObj2.OutlineWidth  = 2;
                textObj2.HeadingX      = current3.Type;
                textObj2.HeadingY      = (float)current3.Difficulty;
                textObj2.Position      = new Vector2(spriteObj.X, spriteObj.Bounds.Bottom + 80);
                m_slainCountText.Add(textObj2);
                var type = current3.Type;
                if (type <= 15)
                {
                    if (type != 1)
                    {
                        if (type != 7)
                        {
                            if (type == 15)
                            {
                                if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                                {
                                    if (current3.Flip == SpriteEffects.None)
                                    {
                                        current3.X -= 25f;
                                    }
                                    else
                                    {
                                        current3.X += 25f;
                                    }
                                }
                            }
                        }
                        else if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                        {
                            current3.X += 30f;
                            current3.Y -= 20f;
                        }
                    }
                    else
                    {
                        (current3 as EnemyObj_BallAndChain).BallAndChain.Visible  = false;
                        (current3 as EnemyObj_BallAndChain).BallAndChain2.Visible = false;
                    }
                }
                else if (type != 20)
                {
                    if (type != 29)
                    {
                        if (type == 32)
                        {
                            if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                            {
                                spriteObj.Visible = false;
                            }
                        }
                    }
                    else
                    {
                        if (current3.Difficulty == GameTypes.EnemyDifficulty.ADVANCED)
                        {
                            (current3 as EnemyObj_LastBoss).ForceSecondForm(true);
                            current3.ChangeSprite("EnemyLastBossIdle_Character");
                            current3.PlayAnimation();
                        }
                        spriteObj.ChangeSprite("GiantPortrait_Sprite");
                        spriteObj.Scale = Vector2.One;
                        spriteObj.Scale = new Vector2((current3.Width + num) / spriteObj.Width,
                                                      (current3.Height + num) / spriteObj.Height);
                        textObj.Position  = new Vector2(spriteObj.X, spriteObj.Bounds.Bottom + 40);
                        textObj2.Position = new Vector2(spriteObj.X, spriteObj.Bounds.Bottom + 80);
                    }
                }
                else
                {
                    current3.ChangeSprite("EnemyZombieWalk_Character");
                    current3.PlayAnimation();
                }
                var spriteObj2 = new SpriteObj("LineageScreenPlaque1Long_Sprite");
                spriteObj2.Scale    = new Vector2(1.8f, 1.8f);
                spriteObj2.Position = new Vector2(spriteObj.X, spriteObj.Bounds.Bottom + 80);
                m_plaqueList.Add(spriteObj2);
            }
            base.LoadContent(graphics);
        }
Example #15
0
 public override void Update(GameTime gameTime)
 {
     if (!Game.PlayerStats.TutorialComplete)
     {
         var waypointIndex = m_waypointIndex;
         m_waypointIndex = PlayerNearWaypoint();
         if (m_waypointIndex != waypointIndex)
         {
             Tween.StopAllContaining(m_tutorialText, false);
             if (m_waypointIndex != -1)
             {
                 if (!InputManager.GamePadIsConnected(PlayerIndex.One))
                 {
                     m_tutorialText.Text = m_tutorialTextList[m_waypointIndex];
                 }
                 else
                 {
                     m_tutorialText.Text = m_tutorialControllerTextList[m_waypointIndex];
                 }
                 Tween.To(m_tutorialText, 0.25f, Tween.EaseNone, "Opacity", "1");
             }
             else
             {
                 Tween.To(m_tutorialText, 0.25f, Tween.EaseNone, "Opacity", "0");
             }
         }
     }
     else
     {
         var bounds = m_diary.Bounds;
         bounds.X        -= 50;
         bounds.Width    += 100;
         m_speechBubble.Y = m_diary.Y - m_speechBubble.Height - 20f - 30f +
                            (float)Math.Sin(Game.TotalGameTime * 20f) * 2f;
         if (CollisionMath.Intersects(Player.Bounds, bounds) && Player.IsTouchingGround)
         {
             if (m_speechBubble.SpriteName == "ExclamationSquare_Sprite")
             {
                 m_speechBubble.ChangeSprite("UpArrowSquare_Sprite");
             }
             if (Game.GlobalInput.JustPressed(16) || Game.GlobalInput.JustPressed(17))
             {
                 if (!Game.PlayerStats.ReadLastDiary)
                 {
                     var rCScreenManager = Player.AttachedLevel.ScreenManager as RCScreenManager;
                     rCScreenManager.DialogueScreen.SetDialogue("DiaryEntry" + 24);
                     rCScreenManager.DialogueScreen.SetConfirmEndHandler(this, "RunFlashback");
                     rCScreenManager.DisplayScreen(13, true);
                 }
                 else
                 {
                     var rCScreenManager2 = Player.AttachedLevel.ScreenManager as RCScreenManager;
                     rCScreenManager2.DisplayScreen(20, true);
                 }
             }
         }
         else if (m_speechBubble.SpriteName == "UpArrowSquare_Sprite")
         {
             m_speechBubble.ChangeSprite("ExclamationSquare_Sprite");
         }
         if (!Game.PlayerStats.ReadLastDiary || CollisionMath.Intersects(Player.Bounds, bounds))
         {
             m_speechBubble.Visible = true;
         }
         else if (Game.PlayerStats.ReadLastDiary && !CollisionMath.Intersects(Player.Bounds, bounds))
         {
             m_speechBubble.Visible = false;
         }
     }
     base.Update(gameTime);
 }
Example #16
0
        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();
        }
Example #17
0
        public void UpdateDescriptionPlate(SkillObj trait)
        {
            var text = trait.IconName;

            text = text.Replace("Locked", "");
            text = text.Replace("Max", "");
            m_skillIcon.ChangeSprite(text);
            m_skillTitle.Text       = trait.Name;
            m_skillDescription.Text = trait.Description;
            m_skillDescription.WordWrap(280);
            m_inputDescription.Text = trait.InputDescription;
            m_inputDescription.WordWrap(280);
            m_inputDescription.Y = m_skillDescription.Bounds.Bottom + 10;
            var num = TraitStatType.GetTraitStat(trait.TraitType);

            if (num > -1f)
            {
                if (num < 1f)
                {
                    num *= 100f;
                    num  = (int)Math.Round(num, MidpointRounding.AwayFromZero);
                }
                if (num == 0f)
                {
                    num = trait.ModifierAmount;
                    if (trait.TraitType == SkillType.Crit_Chance_Up)
                    {
                        num *= 100f;
                        num  = (int)Math.Round(num, MidpointRounding.AwayFromZero);
                    }
                }
                m_skillCurrent.Text = "Current: " + num + trait.UnitOfMeasurement;
                if (trait.CurrentLevel < trait.MaxLevel)
                {
                    var num2 = trait.PerLevelModifier;
                    if (num2 < 1f && trait.TraitType != SkillType.Invuln_Time_Up)
                    {
                        num2 *= 100f;
                        if (trait.TraitType != SkillType.Death_Dodge)
                        {
                            num2 = (int)Math.Round(num2, MidpointRounding.AwayFromZero);
                        }
                    }
                    m_skillUpgrade.Text = "Upgrade: +" + num2 + trait.UnitOfMeasurement;
                }
                else
                {
                    m_skillUpgrade.Text = "Upgrade: --";
                }
                m_skillLevel.Text = string.Concat("Level: ", trait.CurrentLevel, "/", trait.MaxLevel);
                var arg = "unlock";
                if (trait.CurrentLevel > 0)
                {
                    arg = "upgrade";
                }
                m_skillCost.Text = trait.TotalCost + " gold to " + arg;
                if (m_inputDescription.Text != " " && m_inputDescription.Text != "")
                {
                    m_skillCurrent.Y = m_inputDescription.Bounds.Bottom + 40;
                }
                else
                {
                    m_skillCurrent.Y = m_skillDescription.Bounds.Bottom + 40;
                }
                m_skillUpgrade.Y             = m_skillCurrent.Y + 30f;
                m_skillLevel.Y               = m_skillUpgrade.Y + 30f;
                m_descriptionDivider.Visible = true;
            }
            else
            {
                m_skillCurrent.Text          = "";
                m_skillUpgrade.Text          = "";
                m_skillLevel.Text            = "";
                m_descriptionDivider.Visible = false;
                var arg2 = "unlock";
                if (trait.CurrentLevel > 0)
                {
                    arg2 = "upgrade";
                }
                m_skillCost.Text = trait.TotalCost + " gold to " + arg2;
            }
            m_descriptionDivider.Position = new Vector2(m_skillCurrent.AbsX, m_skillCurrent.AbsY - 20f);
            if (trait.CurrentLevel >= trait.MaxLevel)
            {
                m_skillCost.Visible   = false;
                m_skillCostBG.Visible = false;
            }
            else
            {
                m_skillCost.Visible   = true;
                m_skillCostBG.Visible = true;
            }
            m_playerMoney.Text = Game.PlayerStats.Gold.ToString();
        }
Example #18
0
 public void UpdateData()
 {
     SetTraits(Traits);
     if (Traits.X == 8f || Traits.Y == 8f)
     {
         m_playerSprite.GetChildAt(7).Visible = false;
     }
     if (Traits.X == 20f || Traits.Y == 20f)
     {
         FlipPortrait = true;
     }
     m_classTextObj.Text = "the " + ClassType.ToString(Class, IsFemale);
     m_spellIcon.ChangeSprite(SpellType.Icon(Spell));
     if (Class == 0 || Class == 8)
     {
         m_playerSprite.GetChildAt(15).Visible = true;
         m_playerSprite.GetChildAt(15).ChangeSprite("PlayerIdleShield_Sprite");
     }
     else if (Class == 5 || Class == 13)
     {
         m_playerSprite.GetChildAt(15).Visible = true;
         m_playerSprite.GetChildAt(15).ChangeSprite("PlayerIdleLamp_Sprite");
     }
     else if (Class == 1 || Class == 9)
     {
         m_playerSprite.GetChildAt(15).Visible = true;
         m_playerSprite.GetChildAt(15).ChangeSprite("PlayerIdleBeard_Sprite");
     }
     else if (Class == 4 || Class == 12)
     {
         m_playerSprite.GetChildAt(15).Visible = true;
         m_playerSprite.GetChildAt(15).ChangeSprite("PlayerIdleHeadband_Sprite");
     }
     else if (Class == 2 || Class == 10)
     {
         m_playerSprite.GetChildAt(15).Visible = true;
         m_playerSprite.GetChildAt(15).ChangeSprite("PlayerIdleHorns_Sprite");
     }
     else
     {
         m_playerSprite.GetChildAt(15).Visible = false;
     }
     m_playerSprite.GetChildAt(0).Visible = false;
     if (Class == 16)
     {
         m_playerSprite.GetChildAt(0).Visible = true;
         m_playerSprite.GetChildAt(12).ChangeSprite("PlayerIdleHead" + 6 + "_Sprite");
     }
     if (Class == 17)
     {
         m_playerSprite.GetChildAt(12).ChangeSprite("PlayerIdleHead" + 7 + "_Sprite");
     }
     if (!IsFemale)
     {
         m_playerSprite.GetChildAt(5).Visible  = false;
         m_playerSprite.GetChildAt(13).Visible = false;
     }
     else
     {
         m_playerSprite.GetChildAt(5).Visible  = true;
         m_playerSprite.GetChildAt(13).Visible = true;
     }
     if (Traits.X == 6f || Traits.Y == 6f)
     {
         m_playerSprite.Scale = new Vector2(3f, 3f);
     }
     if (Traits.X == 7f || Traits.Y == 7f)
     {
         m_playerSprite.Scale = new Vector2(1.35f, 1.35f);
     }
     if (Traits.X == 10f || Traits.Y == 10f)
     {
         m_playerSprite.ScaleX *= 0.825f;
         m_playerSprite.ScaleY *= 1.25f;
     }
     if (Traits.X == 9f || Traits.Y == 9f)
     {
         m_playerSprite.ScaleX *= 1.25f;
         m_playerSprite.ScaleY *= 1.175f;
     }
     if (Class == 6 || Class == 14)
     {
         m_playerSprite.OutlineColour = Color.White;
         return;
     }
     m_playerSprite.OutlineColour = Color.Black;
 }
Example #19
0
        public override void Update(GameTime gameTime)
        {
            if (Game.PlayerStats.TutorialComplete)
            {
                Rectangle bounds = m_diary.Bounds;
                bounds.X     -= 50;
                bounds.Width += 100;

                m_speechBubble.Y = m_diary.Y - m_speechBubble.Height - 20f - 30f + (float)Math.Sin(Game.TotalGameTime * 20f) * 2f;

                var intersects = CollisionMath.Intersects(Player.Bounds, bounds);

                if (intersects && Player.IsTouchingGround)
                {
                    if (m_speechBubble.SpriteName == "ExclamationSquare_Sprite")
                    {
                        m_speechBubble.ChangeSprite("UpArrowSquare_Sprite");
                    }

                    if (InputManager.IsNewlyPressed(InputFlags.PlayerUp1 | InputFlags.PlayerUp2))
                    {
                        if (Game.PlayerStats.ReadLastDiary)
                        {
                            RCScreenManager screenManager = this.Player.AttachedLevel.ScreenManager as RCScreenManager;
                            screenManager.DisplayScreen(ScreenType.DiaryEntry, true, null);
                        }
                        else
                        {
                            RCScreenManager rCScreenManager = Player.AttachedLevel.ScreenManager as RCScreenManager;
                            rCScreenManager.DialogueScreen.SetDialogue("DiaryEntry" + 24);
                            rCScreenManager.DialogueScreen.SetConfirmEndHandler(this, "RunFlashback");
                            rCScreenManager.DisplayScreen(ScreenType.Dialogue, true, null);
                        }
                    }
                }
                else if (m_speechBubble.SpriteName == "UpArrowSquare_Sprite")
                {
                    m_speechBubble.ChangeSprite("ExclamationSquare_Sprite");
                }


                if (!Game.PlayerStats.ReadLastDiary || intersects)
                {
                    m_speechBubble.Visible = true;
                }
                else if (Game.PlayerStats.ReadLastDiary && !intersects)
                {
                    m_speechBubble.Visible = false;
                }
            }
            else
            {
                int lastWaypoint = m_waypointIndex;
                m_waypointIndex = PlayerNearWaypoint();
                if (m_waypointIndex != lastWaypoint)
                {
                    Tween.StopAllContaining(m_tutorialText, false);
                    if (m_waypointIndex == -1)
                    {
                        Tween.To(m_tutorialText, 0.25f, Tween.EaseNone, "Opacity", "0");
                    }
                    else
                    {
                        if (InputManager.IsGamepadConnected())
                        {
                            m_tutorialText.Text = m_tutorialControllerTextList[m_waypointIndex];
                        }
                        else
                        {
                            m_tutorialText.Text = m_tutorialTextList[m_waypointIndex];
                        }

                        Tween.To(m_tutorialText, 0.25f, Tween.EaseNone, "Opacity", "1");
                    }
                }
            }
            base.Update(gameTime);
        }
Example #20
0
 public void ChangeToBossPupil()
 {
     m_pupil.ChangeSprite("EnemyEyeballBossPupil_Sprite");
     m_pupil.Scale = new Vector2(0.9f, 0.9f);
 }
Example #21
0
 public override void LoadContent(GraphicsDevice graphics)
 {
     this.m_continueText = new KeyIconTextObj(Game.JunicodeFont);
     this.m_continueText.FontSize = 14f;
     this.m_continueText.Align = Types.TextAlign.Right;
     this.m_continueText.Position = new Vector2(1270f, 650f);
     this.m_continueText.ForceDraw = true;
     this.m_continueText.Opacity = 0f;
     this.m_background = new BackgroundObj("LineageScreenBG_Sprite");
     this.m_background.SetRepeated(true, true, Game.ScreenManager.Camera, null);
     this.m_background.X -= 6600f;
     this.m_background.Opacity = 0.7f;
     this.m_endingMask = new SpriteObj("Blank_Sprite");
     this.m_endingMask.ForceDraw = true;
     this.m_endingMask.TextureColor = Color.Black;
     this.m_endingMask.Scale = new Vector2(1330f / (float)this.m_endingMask.Width, 730f / (float)this.m_endingMask.Height);
     this.m_cameraPosList = new List<Vector2>();
     this.m_frameList = new List<SpriteObj>();
     this.m_nameList = new List<TextObj>();
     this.m_slainCountText = new List<TextObj>();
     foreach (GameObj current in base.GameObjList)
     {
         if (current is WaypointObj)
         {
             this.m_cameraPosList.Add(default(Vector2));
         }
     }
     CultureInfo cultureInfo = (CultureInfo)CultureInfo.CurrentCulture.Clone();
     cultureInfo.NumberFormat.CurrencyDecimalSeparator = ".";
     foreach (GameObj current2 in base.GameObjList)
     {
         if (current2 is WaypointObj)
         {
             int index = int.Parse(current2.Name, NumberStyles.Any, cultureInfo);
             this.m_cameraPosList[index] = current2.Position;
         }
     }
     float num = 150f;
     foreach (EnemyObj current3 in base.EnemyList)
     {
         current3.Initialize();
         current3.PauseEnemy(true);
         current3.IsWeighted = false;
         current3.PlayAnimation(true);
         current3.UpdateCollisionBoxes();
         SpriteObj spriteObj = new SpriteObj("LineageScreenFrame_Sprite");
         spriteObj.DropShadow = new Vector2(4f, 6f);
         if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
         {
             spriteObj.ChangeSprite("GiantPortrait_Sprite");
             this.FixMiniboss(current3);
         }
         spriteObj.Scale = new Vector2(((float)current3.Width + num) / (float)spriteObj.Width, ((float)current3.Height + num) / (float)spriteObj.Height);
         if (spriteObj.ScaleX < 1f)
         {
             spriteObj.ScaleX = 1f;
         }
         if (spriteObj.ScaleY < 1f)
         {
             spriteObj.ScaleY = 1f;
         }
         spriteObj.Position = new Vector2(current3.X, (float)current3.Bounds.Top + (float)current3.Height / 2f);
         this.m_frameList.Add(spriteObj);
         TextObj textObj = new TextObj(Game.JunicodeFont);
         textObj.FontSize = 12f;
         textObj.Align = Types.TextAlign.Centre;
         textObj.Text = current3.Name;
         textObj.OutlineColour = new Color(181, 142, 39);
         textObj.OutlineWidth = 2;
         textObj.Position = new Vector2(spriteObj.X, (float)(spriteObj.Bounds.Bottom + 40));
         this.m_nameList.Add(textObj);
         TextObj textObj2 = new TextObj(Game.JunicodeFont);
         textObj2.FontSize = 10f;
         textObj2.Align = Types.TextAlign.Centre;
         textObj2.OutlineColour = new Color(181, 142, 39);
         textObj2.Text = "Slain: 0";
         textObj2.OutlineWidth = 2;
         textObj2.HeadingX = (float)current3.Type;
         textObj2.HeadingY = (float)current3.Difficulty;
         textObj2.Position = new Vector2(spriteObj.X, (float)(spriteObj.Bounds.Bottom + 80));
         this.m_slainCountText.Add(textObj2);
         byte type = current3.Type;
         if (type <= 15)
         {
             if (type != 1)
             {
                 if (type != 7)
                 {
                     if (type == 15)
                     {
                         if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                         {
                             if (current3.Flip == SpriteEffects.None)
                             {
                                 current3.X -= 25f;
                             }
                             else
                             {
                                 current3.X += 25f;
                             }
                         }
                     }
                 }
                 else if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                 {
                     current3.X += 30f;
                     current3.Y -= 20f;
                 }
             }
             else
             {
                 (current3 as EnemyObj_BallAndChain).BallAndChain.Visible = false;
                 (current3 as EnemyObj_BallAndChain).BallAndChain2.Visible = false;
             }
         }
         else if (type != 20)
         {
             if (type != 29)
             {
                 if (type == 32)
                 {
                     if (current3.Difficulty == GameTypes.EnemyDifficulty.MINIBOSS)
                     {
                         spriteObj.Visible = false;
                     }
                 }
             }
             else
             {
                 if (current3.Difficulty == GameTypes.EnemyDifficulty.ADVANCED)
                 {
                     (current3 as EnemyObj_LastBoss).ForceSecondForm(true);
                     current3.ChangeSprite("EnemyLastBossIdle_Character");
                     current3.PlayAnimation(true);
                 }
                 spriteObj.ChangeSprite("GiantPortrait_Sprite");
                 spriteObj.Scale = Vector2.One;
                 spriteObj.Scale = new Vector2(((float)current3.Width + num) / (float)spriteObj.Width, ((float)current3.Height + num) / (float)spriteObj.Height);
                 textObj.Position = new Vector2(spriteObj.X, (float)(spriteObj.Bounds.Bottom + 40));
                 textObj2.Position = new Vector2(spriteObj.X, (float)(spriteObj.Bounds.Bottom + 80));
             }
         }
         else
         {
             current3.ChangeSprite("EnemyZombieWalk_Character");
             current3.PlayAnimation(true);
         }
         SpriteObj spriteObj2 = new SpriteObj("LineageScreenPlaque1Long_Sprite");
         spriteObj2.Scale = new Vector2(1.8f, 1.8f);
         spriteObj2.Position = new Vector2(spriteObj.X, (float)(spriteObj.Bounds.Bottom + 80));
         this.m_plaqueList.Add(spriteObj2);
     }
     base.LoadContent(graphics);
 }
Example #22
0
        private void SetData()
        {
            switch (m_skillUnlockType)
            {
            case 1:
                m_picture.ChangeSprite("BlacksmithUnlockPicture_Sprite");
                m_title.ChangeSprite("SmithyUnlockedText_Sprite");
                break;

            case 2:
                m_picture.ChangeSprite("EnchantressUnlockPicture_Sprite");
                m_title.ChangeSprite("EnchantressUnlockedText_Sprite");
                break;

            case 3:
                m_picture.ChangeSprite("ArchitectUnlockPicture_Sprite");
                m_title.ChangeSprite("ArchitectUnlockedText_Sprite");
                break;

            case 4:
                m_picture.ChangeSprite("NinjaUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;

            case 5:
                m_picture.ChangeSprite("BankerUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;

            case 6:
                m_picture.ChangeSprite("SpellSwordUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;

            case 7:
                m_picture.ChangeSprite("LichUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;

            case 8:
                m_picture.ChangeSprite("KnightUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 9:
                m_picture.ChangeSprite("MageUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 10:
                m_picture.ChangeSprite("BarbarianUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 11:
                m_picture.ChangeSprite("NinjaUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 12:
                m_picture.ChangeSprite("AssassinUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 13:
                m_picture.ChangeSprite("BankerUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 14:
                m_picture.ChangeSprite("SpellSwordUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 15:
                m_picture.ChangeSprite("LichUpgradePicture_Sprite");
                m_title.ChangeSprite("ClassUpgradedText_Sprite");
                break;

            case 16:
                m_picture.ChangeSprite("DragonUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;

            case 17:
                m_picture.ChangeSprite("TraitorUnlockPicture_Sprite");
                m_title.ChangeSprite("ClassUnlockedText_Sprite");
                break;
            }
            m_text.Text = SkillUnlockType.Description(m_skillUnlockType);
            m_text.WordWrap(340);
        }