Example #1
0
        /// <summary>
        /// Determines whether this instance [can kill rival] the specified rival.
        /// </summary>
        /// <param name="rival">The rival.</param>
        /// <returns>
        ///     <c>true</c> if this instance [can kill rival] the specified rival; otherwise, <c>false</c>.
        /// </returns>
        public bool CanKillRival(Rival rival)
        {
            if (whiteList.Contains(rival.Name))
            {
                AppCore.LogFights.Debug(
                    string.Format("Противник {0} негодиться для атаки.", rival.Name),
                    "Он у вас в белом списке", rival);
                return(false);
            }

            if (rival.Clan != null && (WhiteClanList.Contains(rival.Clan.Tag) || WhiteClanList.Contains(rival.Clan.Name)))
            {
                AppCore.LogFights.Debug(
                    string.Format("Противник {0} негодиться для атаки.", rival.Name),
                    "Он находиться в клане который у вас в белом списке.", rival);
                return(false);
            }
            if (AppCore.AttackSettings.AllowLostGlory)
            {
                return(true);
            }
            var msg = Browser.Span(Find.ByClass("text_main_5"));


            if (msg.Exists &&
                msg.Spans.Count > 0 &&
                msg.Spans[0].ClassName == "num_minus")
            {
                AppCore.LogFights.Debug(
                    string.Format("Противник {0} негодиться для атаки  ", rival.Name),
                    "Требуется слив славы. Для разреншения слива славы зайдите в Настройки > Атака", rival);
                return(false);
            }
            return(true);
        }
Example #2
0
        public void DoSpell(LiveMonster target, ActiveCard card, Point location)
        {
            if (!BeforeUseCard(card, location))
            {
                return;
            }

            try
            {
                Spell spell = new Spell(card.CardId);
                spell.Addon = SpellEffectAddon;
                spell.UpgradeToLevel(card.Level);
                if (!card.IsHeroSkill)
                {
                    BattleManager.Instance.StatisticData.GetPlayer(IsLeft).SpellAdd++;
                }

                SpellAssistant.CheckSpellEffect(spell, IsLeft, target, location);

                if (SpikeManager.HasSpike("mirrorspell"))
                {
                    Rival.AddCard(null, card.CardId, card.Level);
                }
            }
            catch (Exception e)
            {
                NLog.Warn(e);
                BattleManager.Instance.FlowWordQueue.Add(new FlowWord("未知错误", location, 0, "Red", 26, 0, 0, 2, 15), false);
                return;
            }
            AfterUseCard(card);
            CardManager.DeleteCardAt(SelectId);
        }
Example #3
0
        /// <summary>
        /// Updates the user from rival.
        /// </summary>
        /// <param name="rival">The rival.</param>
        protected void UpdateUserFromRival(Rival rival)
        {
            var user = ObjectProvider.Instance.GetUserByName(rival.Name);

            user.Level = rival.Level;
            user.Skills.FillSkils(rival.Skills);
            ObjectProvider.Instance.UpdateUser(user);
        }
        public ActionResult DeleteConfirmed(Guid id)
        {
            Rival rival = db.Rivals.Find(id);

            db.Rivals.Remove(rival);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #5
0
    // for Rival
    public void Show(Rival rival, string lines, UnityEngine.Events.UnityAction clickHandler)
    {
        CharacterPanel.Set(rival);

        Character c = Manager.Instance.DT.Character[rival.characterId];

        show(c.name, lines, clickHandler);
    }
 public ActionResult Edit([Bind(Include = "Id,Name,City")] Rival rival)
 {
     if (ModelState.IsValid)
     {
         db.Entry(rival).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View("~/Areas/Commerce/Views/TendersRelated/Rivals/Edit.cshtml", rival));
 }
Example #7
0
 private void attack()
 {
     jab.Play();
     if (Rival.location - location < 144 * .6 &&
         Rival.location - location > 144 * .4 || location - Rival.location < 144 * .6 &&
         location - Rival.location > 144 * .4)
     {
         Rival.damage();
     }
 }
Example #8
0
 /// <summary>
 /// Determines whether this instance [can kill rival] the specified rival.
 /// </summary>
 /// <param name="rival">The rival.</param>
 /// <param name="settings">The settings.</param>
 /// <returns>
 ///     <c>true</c> if this instance [can kill rival] the specified rival; otherwise, <c>false</c>.
 /// </returns>
 protected bool CanKillRival(Rival rival, RivalSourceSettings settings)
 {
     if (!settings.LevelFilter.CreateFull(Player.Level).IsInRange(rival.Level))
     {
         AppCore.LogFights.Debug(string.Format("Противник {0} негодиться для атаки.", rival.Name),
                                 "Не подходит по уровню", rival);
         return(false);
     }
     return(Player.CanKill(rival) &&
            Controller.CanKillRival(rival));
 }
Example #9
0
        static void Main(string[] args)
        {
            //Menu
            Menu.StartMenu();

            //New object of Character
            var player = new Character();

            //Nickname
            Console.WriteLine("Please enter your Nickname:");
            var nicknameInput = Console.ReadLine();

            player.Nickname = nicknameInput;

            //race
            bool repeatRaceInput = true;

            while (repeatRaceInput)
            {
                Console.WriteLine("Please enter your race. Choose from Human, Monster or Mystic.");
                var raceInput = Console.ReadLine();
                raceInput = raceInput.ToUpper();
                RaceType resultRace;
                Enum.TryParse(raceInput, true, out resultRace);
                switch (resultRace)
                {
                case RaceType.Human:
                    player.Race     = "Human";
                    repeatRaceInput = false;
                    break;

                case RaceType.Monster:
                    player.Race     = "Monster";
                    repeatRaceInput = false;
                    break;

                case RaceType.Mystic:
                    player.Race     = "Mystic";
                    repeatRaceInput = false;
                    break;

                default:
                    Console.WriteLine("Please enter a valid race");
                    break;
                }
            }
            player.CharacterStats();

            //New object of Rival
            var enemy = new Rival("Yo Mama");

            enemy.RivalInfo();
            Fight.Fighting(player, enemy);
        }
Example #10
0
    public void MOVED(int playerID, float posx, float posy, float rot)
    {
        //dont move yourself
        if (playerID == player.GetPlayerID())
        {
            return;
        }

        Rival rival = GetRival(playerID);

        rival.SetPosition(new Vector2(posx, posy), rot);
    }
        public ActionResult Create([Bind(Include = "Id,Name,City")] Rival rival)
        {
            if (ModelState.IsValid)
            {
                rival.Id = Guid.NewGuid();
                db.Rivals.Add(rival);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View("~/Areas/Commerce/Views/TendersRelated/Rivals/Create.cshtml", rival));
        }
Example #12
0
 /// <summary>
 /// Called when [rival created].
 /// </summary>
 /// <param name="rival">The rival.</param>
 /// <param name="canKill">if set to <c>true</c> [can kill].</param>
 protected override void OnRivalCreated(Rival rival, bool canKill)
 {
     if (rival.Level > _cow.Level)
     {
         UpdateUserFromRival(rival);
         _cow.Level = rival.Level;
     }
     if (!canKill)
     {
         _farm.RemoveCow(_cow);
     }
 }
Example #13
0
        public GuildRelation GetRelation(Guild guild)
        {
            if (Union.Contains(guild))
            {
                return(GuildRelation.Union);
            }

            if (Rival.Contains(guild))
            {
                return(GuildRelation.Rival);
            }

            return(GuildRelation.None);
        }
        // GET: Commerce/Rivals/Delete/5
        public ActionResult Delete(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Rival rival = db.Rivals.Find(id);

            if (rival == null)
            {
                return(HttpNotFound());
            }
            return(View("~/Areas/Commerce/Views/TendersRelated/Rivals/Delete.cshtml", rival));
        }
Example #15
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rival = await _context.Rival.FirstOrDefaultAsync(m => m.RivaID == id);

            if (Rival == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Example #16
0
        public async Task VortexAttackAsync()
        {
            if (CurrentAction == ActionType.Died)
            {
                return;
            }

            if (CurrentAction != ActionType.Handle &&
                CurrentAction != ActionType.BlockAttack)
            {
                return;
            }

            CurrentAction = ActionType.VortexAttack;
            IsInBlock     = false;
            var random = new Random();

            if (!Rival.IsInBlock)
            {
                if (Rival.CurrentAction != ActionType.Died)
                {
                    Rival.Health -= random.Next(3, 4);
                    Adrenaline   += GetRandomNumber(0.2, 0.3);
                }
            }
            else
            {
                _ = Rival.PlayAnimAsync("block_attack");
            }

            var color = Rival.IsInBlock ? ConsoleColor.Blue : ConsoleColor.Red;
            var task1 = Rival.FlashingAsync(color, ConsoleColor.Gray, 3, 100);
            var task2 = PlayAnimAsync("vortex_attack");

            await Task.WhenAll(new[] { task1, task2 });

            CurrentAction = ActionType.Handle;
            _             = PlayAnimAsync(IsInBlock ? "block_attack" : "armed_handle");

            if (Rival.Health <= 0 && Rival.CurrentAction != ActionType.Died)
            {
                _ = Rival.PlayAnimAsync("poof_die");
                Rival.CurrentAction = ActionType.Died;
            }

            _ = GameObject.InterfaceUpdateAsync();
        }
Example #17
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rival = await _context.Rival.FindAsync(id);

            if (Rival != null)
            {
                _context.Rival.Remove(Rival);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Example #18
0
 public static void Initialize()
 {
     Config.Load();
     Strings.Load(""); // default language
     Player           = new Player();
     Rival            = new Rival();
     TurnCount        = 0;
     AttackingUnit    = null;
     DefendingUnit    = null;
     CriticalFlag     = false;
     AvoidFlag        = false;
     CCBonusList      = new List <Card>();
     InductionSetList = new List <List <Induction> >();
     PlayFirstTurn    = false;
     Request.ClearNextResults();    // for testing
     LosingProcessDisabled = false; // for testing
 }
Example #19
0
        public override void Load()
        {
            if (!isHighLvl)
            {
                LoadMapData(1, "Stages\\Stage3_Easy.txt", 0, 0);
            }
            else
            {
                LoadMapData(1, "Stages\\Stage3_Hard.txt", 0, 0);
            }

            player = new Player(this, 100, 100, 48, 48, 10);
            characters.Add(player);
            sword = player.sword;
            weapons.Add(sword);
            staticTerrains.Add(new Block(this, 100, 200, 32, 32));
            boss = new Rival(this, 15000, 300, 60, 60, game.isHighLvl ? 50 : 40, 0, 1, 1);
            characters.Add(boss);
            AddObjects();

            SetTerrainDirection();
            SetWaterDirection();

            base.Load();
            foreach (Weapon weapon in weapons)
            {
                if (weapon is Turret)
                {
                    weapon.Load(game.Content, "Object\\Turret&Bullet" + "\\" + "windTurret2");
                }
            }

            if (!game.isHighLvl)
            {
                SoundControl.IniMusic("Audio\\BGM\\machine", true);
            }
            else
            {
                SoundControl.IniMusic("Audio\\BGM\\boss", true);
            } SoundControl.musicInstance.IsLooped = true;
            if (!game.isMuted)
            {
                SoundControl.Play();
            }
        }
Example #20
0
        private Rival CreateRival()
        {
            var mainTable   = FindRivalTable();
            var statusTable = ((Table)mainTable.NextSibling);

            var result = new Rival();

            result.Name = mainTable.TableRows[0].ToString();

            result.Safe = GetSafe(mainTable);
            var valueCell = 2;

            result.Level = int.Parse(statusTable.TableRows[1].TableCells[valueCell].Text);
            //FIXED
            result.FillSkils(statusTable, 1, valueCell);

            return(result);
        }
Example #21
0
        public override bool Attack(Rival rival)
        {
            string roleRival = rival.GetRole();

            switch (roleRival)
            {
            case "Rock":
                return(false);

            case "Paper":
                return(false);

            case "Scissors":
                return(true);
            }

            return(false);
        }
Example #22
0
        // constructor
        protected Exam(EType type, int id, int npcId, int rivalId, bool isFirst)
        {
            _type = type;
            _id = id;
            _npcId = npcId;
            _rivalId = rivalId;
            _isFirst = isFirst;

            if (ExtRival.isValid(_rivalId))
                _rival = Manager.Instance.DT.Rival[_rivalId];
            else
                Log.Error(string.Format("invalid rival id: {0}", _rivalId));

            _iterator = null;

            _startEvent = new StartEvent();
            _endEvent = new EndEvent();
            _dialogueEvent = new DialogueEvent();
        }
Example #23
0
        public static void RepeatMenu(Character player, Rival enemy)
        {
            Console.WriteLine(
                "\n What is your next step?\n" +
                "Use Fight to fight again\n" +
                "Use Shop to purchase something\n" +
                "Use Exit to Quit.\n"
                );

            bool repeatRepeatMenu = true;

            while (repeatRepeatMenu)
            {
                var repeatMenuInput = Console.ReadLine();
                if (repeatMenuInput != null)
                {
                    repeatMenuInput = repeatMenuInput.ToLower();
                    RepeatCommandType resultCommand;
                    Enum.TryParse(repeatMenuInput, true, out resultCommand);
                    switch (resultCommand)
                    {
                    case RepeatCommandType.Exit:
                        Environment.Exit(0);
                        return;

                    case RepeatCommandType.Fight:
                        repeatRepeatMenu = false;
                        Fight.Fighting(player, enemy);
                        break;

                    case RepeatCommandType.Shop:
                        repeatRepeatMenu = false;
                        //soon
                        break;

                    default:
                        Console.WriteLine("Please use one of the given menu options.");
                        break;
                    }
                }
            }
        }
Example #24
0
    public void Setup(Rival rival)
    {
        facebookID = rival.facebookID;

        recordText.text = rival.record.SpaceFormat();

        nameText.text = rival.name;
        if (rival.isPlayer)
        {
            nameText.text += " (" + Localization.Get("you") + ")";
        }

        highlight.SetActive(rival.isPlayer);

        if (rival.level > 0)
        {
            levelText.text = rival.level.ToString();
        }
        else
        {
            levelImage.gameObject.SetActive(false);
        }

        if (rival.userPicTexture != null)
        {
            picImage.texture = rival.userPicTexture;
        }
        else
        {
            picImage.texture = pics.emptyUserPic;
        }

        if (rival.userPicTextureRect != zeroRect)
        {
            picImage.uvRect = rival.userPicTextureRect;
        }

        if (picImage.texture == pics.emptyUserPic && user.socialPic != null)
        {
            picImage.texture = user.socialPic;
        }
    }
Example #25
0
        /// <summary>
        /// Kills the rival.
        /// </summary>
        private bool KillRival(Rival rival)
        {
            Log.Debug("Бой с " + rival.Name, rival.ToString(), rival);


            var result = Controller.KillRival();

            if (result == null)
            {
                return(false);
            }

            var sleepInterval = Controller.GetSleepTimeAfterFight();

            result.NexFightTime = (sleepInterval.HasValue) ? DateTime.Now + sleepInterval.Value : DateTime.Now;

            result.Coulomb         = Player.Coulomb;
            result.SkillDifference = Player.GetSkillDifference(rival);
            result.Rival.Source    = rival.Source;
            result.RivalSource     = Type;

            Machine.OnFightOccured(new FightResultEventArgs(result));

            if (rival.Farm != null && !ReferenceEquals(rival.Farm, Machine.Farm))
            {
                rival.Farm.AddResult(result);
            }

            Machine.Farm.AddResult(result);
            importer.Import(result);
            if (result.Win)
            {
                Log.Info("Победа в бое c " + rival.Name, result.ToString(), result);
            }
            else
            {
                Log.Warn("Пройгрыш боя c " + rival.Name, result.ToString(), result);
            }

            return(true);
        }
Example #26
0
    public virtual void Set(Rival rival)
    {
        Hide();

        Sprite image = null;

        if (Manager.Instance.Object.MainCharacter.IsChildHood())
        {
            image = rival.childImage;
        }
        else
        {
            int       characterId = rival.characterId;
            Character c           = Manager.Instance.DT.Character[characterId];
            image = c.image;
        }

        setBaseShape(image);

        Show();
    }
Example #27
0
    public bool surface; //true = wall / false = player

    // Start is called before the first frame update
    void Start()
    {
        initialPos = transform.position;

        gameControllerScript = TableGO.GetComponent <GameController>();

        rivalScript = RivalGO.GetComponent <Rival>();

        playerScript = PlayerGO.GetComponent <Player>();

        playerPointPos = new Vector3(-3.32f, 2.8f, -6.66f);

        audioFXGO = GameObject.Find("AudioFX");

        audioFXscript = audioFXGO.GetComponent <AudioFX>();

        rb = GetComponent <Rigidbody>();

        DisableRagdoll();

        //gameObject.SetActive(false);
    }
Example #28
0
        protected override void end()
        {
            float quotient = ((float)_successCount) / _actionPeriod;

            int achievementRatio = Mathf.RoundToInt(quotient * 100);

            string achieveMsg = string.Format(Def.ACHIVEMENT_RATIO_FORMAT, achievementRatio);
            Log.Debug(achieveMsg);

            string msg = null;
            if (achievementRatio <= 0)
            {
                _mode.Character.Stress += _lesson.terribleStress;
                
                string stressMsg = string.Format(Def.STRESS_FORMAT, _lesson.terribleStress);
                msg = string.Format("{0}, {1}", achieveMsg, stressMsg);
            }
            else if (achievementRatio < 100)
            {
                msg = achieveMsg;
            }
            else
            {
                _mode.Character.Stress += _lesson.perfectStress;
                
                string stressMsg = string.Format(Def.STRESS_FORMAT, _lesson.perfectStress);
                msg = string.Format("{0}, {1}", achieveMsg, stressMsg);
            }

            _mode.Schedule.ActionEndEvent.Invoke(achievementRatio, _lesson.npcId, msg);

            // RIVAL SP.Scenario
            if (isSpecialDayForRival())
            {
                Rival rival = Manager.Instance.DT.Rival[_lesson.rivalId];
                Manager.Instance.Object.StoryMode.LoadScenario(rival.specialScenarioPath);
            }
        }
Example #29
0
        public async Task UseSkill()
        {
            if (CurrentAction == ActionType.Died)
            {
                return;
            }

            if (CurrentAction != ActionType.Handle &&
                CurrentAction != ActionType.BlockAttack)
            {
                return;
            }

            CurrentAction = ActionType.UseSkill;

            if (Adrenaline >= 3 && !IsInBlock && Rival.CurrentAction != ActionType.Died)
            {
                IsInBlock = false;
                var random = new Random();

                Rival.Health -= random.Next(13, 17);
                Adrenaline    = 0;

                _ = PlayAnimAsync("armed_handle");

                CurrentAction = ActionType.Handle;

                if (Rival.Health <= 0)
                {
                    _ = Rival.PlayAnimAsync("poof_die");
                    Rival.CurrentAction = ActionType.Died;
                }

                _ = GameObject.InterfaceUpdateAsync();
            }

            CurrentAction = ActionType.Handle;
        }
Example #30
0
        public void Draw(SpriteBatch spriteBatch)
        {
            int y = 100;

            // デバッグ情報
            if (game.inDebugMode)
            {
                switch (game.stageNum)
                {
                    #region Stage0
                case 0:
                    // General:
                    spriteBatch.DrawString(game.debugFont, "stage.isScrolled:" + stage.isScrolled.ToString(), new Vector2(0, 0), fontColor[0]);
                    spriteBatch.DrawString(game.debugFont, "ReversePower:" + stage.reverse.ReversePower.ToString(), new Vector2(0, 10), fontColor[0]);
                    // Player
                    if (stage.characters.Count > 1)
                    {
                        spriteBatch.DrawString(game.debugFont, "player.vector" + stage.player.position.X.ToString(), new Vector2(0, 50), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.X" + stage.player.speed.X.ToString(), new Vector2(0, 60), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.Y" + stage.player.speed.Y.ToString(), new Vector2(0, 70), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isHit:" + stage.player.isHit.ToString(), new Vector2(0, 80), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.normalComboCount:" + stage.player.normalComboCount.ToString(), new Vector2(0, 90), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isDamaged:" + stage.player.isDamaged.ToString(), new Vector2(0, 100), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpCount:" + stage.player.jumpCount.ToString(), new Vector2(0, 110), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpTime:" + stage.player.jumpTime.ToString(), new Vector2(0, 120), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isToChargingMotion:" + stage.player.isToChargingMotion.ToString(), new Vector2(0, 130), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isChargingPower:" + stage.player.isChargingPower.ToString(), new Vector2(0, 140), fontColor[0]);
                        if (stage.player.locus.Count > 1)
                        {
                            spriteBatch.DrawString(game.debugFont, "player.prevVector[1]:" + stage.player.locus[1].ToString(), new Vector2(0, 150), fontColor[0]);
                        }
                    }
                    // else Character
                    if (stage.characters.Count > 2)
                    {
                        //spriteBatch.DrawString(game.Arial2, "characters[1].totalHits:"  + stage.characters[4].totalHits.ToString(), new Vector2(0, 40), Color.Blue);
                        //spriteBatch.DrawString(game.Arial2, "characters[1].comboCount:" + stage.characters[1].comboCount.ToString(), new Vector2(0, 50), Color.Blue);
                    }
                    for (int i = 0; i < stage.characters.Count; i++)
                    {
                        if (stage.characters.Any((x) => x is ShootingEnemy))
                        {
                            if (stage.characters[i] is ShootingEnemy)                                      //.Any((x) => x is ShootingEnemy)) {//(x) => x == i))
                            {
                                ShootingEnemy shootingEnemy = stage.characters[i] as ShootingEnemy;
                                //spriteBatch.DrawString(game.Arial2, "shootingEnemy.bullet1.isShot:" + shootingEnemy.bullet1.isShot.ToString(), new Vector2(0, 200), Color.Blue);
                            }
                        }
                    }
                    // CD
                    spriteBatch.DrawString(game.debugFont, "CD.CrossPoint:" + CollisionDetection.crossPoint.ToString(), new Vector2(0, 200), fontColor[0]);
                    spriteBatch.DrawString(game.debugFont, "CD.crossPoints[0]:" + CollisionDetection.crossPoints[0].ToString(), new Vector2(0, 210), fontColor[0]);
                    spriteBatch.DrawString(game.debugFont, "CD.crossPoints[1]:" + CollisionDetection.crossPoints[1].ToString(), new Vector2(0, 220), fontColor[0]);
                    spriteBatch.DrawString(game.debugFont, "CD.crossPoints[2]:" + CollisionDetection.crossPoints[2].ToString(), new Vector2(0, 230), fontColor[0]);
                    //spriteBatch.DrawString(game.Arial2, "devided2.length:" + stage..ToString(), new Vector2(0, 240), fontColor[0]);
                    break;

                    #endregion
                    #region Stage1, 2, 3
                case 1:
                    // Player
                    if (stage.characters.Count >= 1)
                    {
                        spriteBatch.DrawString(game.debugFont, "player.vector" + stage.player.position.ToString(), new Vector2(0, 50 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.speed" + stage.player.speed.ToString(), new Vector2(0, 60 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isDamaged" + stage.player.isDamaged.ToString(), new Vector2(0, 70 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isHit:" + stage.player.isHit.ToString(), new Vector2(0, 80 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.normalComboCount:" + stage.player.normalComboCount.ToString(), new Vector2(0, 90), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isJumping:" + stage.player.isJumping.ToString(), new Vector2(0, 100 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpCount:" + stage.player.jumpCount.ToString(), new Vector2(0, 110 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpTime:" + stage.player.jumpTime.ToString(), new Vector2(0, 120 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isAttacking3:" + stage.player.isAttacking3.ToString(), new Vector2(0, 130 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isChargingPower:" + stage.player.isChargingPower.ToString(), new Vector2(0, 140 + y), fontColor[1]);
                        if (stage.player.locus.Count > 1)
                        {
                            spriteBatch.DrawString(game.debugFont, "player.prevVector[1]:" + stage.player.locus[1].ToString(), new Vector2(0, 150 + y), fontColor[1]);
                        }
                        spriteBatch.DrawString(game.debugFont, "player.hasAttacked:" + stage.player.hasAttacked.ToString(), new Vector2(0, 160 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "game.score:" + game.score.ToString(), new Vector2(0, 170 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isOnSomething:" + stage.player.isOnSomething.ToString(), new Vector2(0, 180 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isHitLeftSide:" + stage.player.isHitLeftSide.ToString(), new Vector2(0, 190 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "boss.position:" + stage.boss.position.ToString(), new Vector2(0, 200 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "boss.beamTurret:" + (stage.boss as Raijin).beamTurret.isBeingUsed.ToString(), new Vector2(0, 210 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "boss.hasShot:" + (stage.boss as Raijin).beamTurret.hasShot.ToString(), new Vector2(0, 220 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "boss.b[0].isActive:" + (stage.boss as Raijin).beamTurret.bullets[0].isActive.ToString(), new Vector2(0, 230 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "boss.b[0].isShot:" + (stage.boss as Raijin).beamTurret.bullets[0].isShot.ToString(), new Vector2(0, 240 + y), fontColor[1]);
                    }
                    for (int i = 0; i < stage.boss.attackList.Count; i++)
                    {
                        spriteBatch.DrawString(game.debugFont, "boss.attackList:" + stage.boss.attackList[i].ToString(), new Vector2(0, 260 + i * 10 + y), fontColor[1]);
                    }
                    break;

                case 2:
                    // Player
                    if (stage.characters.Count > 1)
                    {
                        spriteBatch.DrawString(game.debugFont, "player.vector" + stage.player.position.X.ToString(), new Vector2(0, 50 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.X" + stage.player.speed.X.ToString(), new Vector2(0, 60 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.Y" + stage.player.speed.Y.ToString(), new Vector2(0, 70 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isHit:" + stage.player.isHit.ToString(), new Vector2(0, 80 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.normalComboCount:" + stage.player.normalComboCount.ToString(), new Vector2(0, 90 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isDamaged:" + stage.player.isDamaged.ToString(), new Vector2(0, 100 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpCount:" + stage.player.jumpCount.ToString(), new Vector2(0, 110 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpTime:" + stage.player.jumpTime.ToString(), new Vector2(0, 120 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isToChargingMotion:" + stage.player.isToChargingMotion.ToString(), new Vector2(0, 130 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isChargingPower:" + stage.player.isChargingPower.ToString(), new Vector2(0, 140 + y), fontColor[1]);
                        if (stage.player.locus.Count > 1)
                        {
                            spriteBatch.DrawString(game.debugFont, "player.prevVector[1]:" + stage.player.locus[1].ToString(), new Vector2(0, 150 + y), fontColor[1]);
                        }
                        spriteBatch.DrawString(game.debugFont, "player.hasAttacked:" + stage.player.hasAttacked.ToString(), new Vector2(0, 160 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "sword.isHit:" + stage.player.sword.isHit.ToString(), new Vector2(0, 170 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "game.score:" + game.score.ToString(), new Vector2(0, 180 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isTouchSomeCeiling:" + stage.player.isTouchSomeCeiling.ToString(), new Vector2(0, 190 + y), fontColor[1]);
                        if (stage.boss is Fuujin)
                        {
                            spriteBatch.DrawString(game.debugFont, "boss.Turret:" + (stage.boss as Fuujin).cutterTurret5Way.position.ToString(), new Vector2(0, 200 + y), fontColor[1]);
                            spriteBatch.DrawString(game.debugFont, "boss.dFA:" + (stage.boss as Fuujin).damageFromAttacking.ToString(), new Vector2(0, 210 + y), fontColor[1]);
                        }
                        for (int i = 0; i < stage.boss.attackList.Count; i++)
                        {
                            spriteBatch.DrawString(game.debugFont, "boss.attackList:" + stage.boss.attackList[i].ToString(), new Vector2(0, 230 + i * 10 + y), fontColor[1]);
                        }
                    }
                    break;

                case 3:
                    // Player
                    if (stage.characters.Count > 1)
                    {
                        spriteBatch.DrawString(game.debugFont, "player.vector" + stage.player.position.X.ToString(), new Vector2(0, 50 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.X" + stage.player.speed.X.ToString(), new Vector2(0, 60 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.Y" + stage.player.speed.Y.ToString(), new Vector2(0, 70 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isHit:" + stage.player.isHit.ToString(), new Vector2(0, 80 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.normalComboCount:" + stage.player.normalComboCount.ToString(), new Vector2(0, 90 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isDamaged:" + stage.player.isDamaged.ToString(), new Vector2(0, 100 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpCount:" + stage.player.jumpCount.ToString(), new Vector2(0, 110 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpTime:" + stage.player.jumpTime.ToString(), new Vector2(0, 120 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isToChargingMotion:" + stage.player.isToChargingMotion.ToString(), new Vector2(0, 130 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "player.isChargingPower:" + stage.player.isChargingPower.ToString(), new Vector2(0, 140 + y), fontColor[1]);
                        if (stage.player.locus.Count > 1)
                        {
                            spriteBatch.DrawString(game.debugFont, "player.prevVector[1]:" + stage.player.locus[1].ToString(), new Vector2(0, 150 + y), fontColor[1]);
                        }
                        spriteBatch.DrawString(game.debugFont, "player.hasAttacked:" + stage.player.hasAttacked.ToString(), new Vector2(0, 160 + y), fontColor[1]);
                        spriteBatch.DrawString(game.debugFont, "game.score:" + game.score.ToString(), new Vector2(0, 170 + y), fontColor[1]);
                        if (stage.boss is Rival)
                        {
                            spriteBatch.DrawString(game.debugFont, "boss.syurikenTurret:" + (stage.boss as Rival).syuriken.isBeingUsed.ToString(), new Vector2(0, 180 + y), fontColor[1]);
                            spriteBatch.DrawString(game.debugFont, "boss.syurikenTurret.bullets[0]:" + (stage.boss as Rival).syuriken.bullets[0].position.ToString(), new Vector2(0, 190 + y), fontColor[1]);
                            spriteBatch.DrawString(game.debugFont, "boss.position" + stage.boss.drawPos.ToString(), new Vector2(0, 200 + y), fontColor[1]);
                            spriteBatch.DrawString(game.debugFont, "boss.speed" + stage.boss.speed.ToString(), new Vector2(0, 210 + y), fontColor[1]);
                            spriteBatch.DrawString(game.debugFont, "boss.turnsRIght" + stage.boss.turnsRight.ToString(), new Vector2(0, 220 + y), fontColor[1]);
                        }
                        for (int i = 0; i < stage.boss.attackList.Count; i++)
                        {
                            spriteBatch.DrawString(game.debugFont, "boss.attackList:" + stage.boss.attackList[i].ToString(), new Vector2(0, 230 + i * 10 + y), fontColor[1]);
                        }
                        if (stage.boss.speed.Y > maxValue)
                        {
                            maxValue = stage.boss.speed.Y;
                        }
                    }
                    break;

                    #endregion
                    #region Stage5(BossTest)
                case 5:
                    // General:
                    spriteBatch.DrawString(game.debugFont, "stage.isScrolled:" + stage.isScrolled.ToString(), new Vector2(0, 0), fontColor[0]);
                    spriteBatch.DrawString(game.debugFont, "ReversePower:" + stage.reverse.ReversePower.ToString(), new Vector2(0, 10), fontColor[0]);
                    // Player
                    if (stage.characters.Count > 1)
                    {
                        spriteBatch.DrawString(game.debugFont, "player.vector" + stage.player.position.X.ToString(), new Vector2(0, 50), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.X" + stage.player.speed.X.ToString(), new Vector2(0, 60), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.speed.Y" + stage.player.speed.Y.ToString(), new Vector2(0, 70), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isHit:" + stage.player.isHit.ToString(), new Vector2(0, 80), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.normalComboCount:" + stage.player.normalComboCount.ToString(), new Vector2(0, 90), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isDamaged:" + stage.player.isDamaged.ToString(), new Vector2(0, 100), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpCount:" + stage.player.jumpCount.ToString(), new Vector2(0, 110), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.jumpTime:" + stage.player.jumpTime.ToString(), new Vector2(0, 120), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isToChargingMotion:" + stage.player.isToChargingMotion.ToString(), new Vector2(0, 130), fontColor[0]);
                        spriteBatch.DrawString(game.debugFont, "player.isChargingPower:" + stage.player.isChargingPower.ToString(), new Vector2(0, 140), fontColor[0]);
                        if (stage.player.locus.Count > 1)
                        {
                            spriteBatch.DrawString(game.debugFont, "player.prevVector[1]:" + stage.player.locus[1].ToString(), new Vector2(0, 150), fontColor[0]);
                        }
                    }
                    // Boss
                    foreach (Character character in stage.characters)
                    {
                        if (stage.characters.Any((x) => x is Raijin))
                        {
                            if (character is Raijin)
                            {
                                Raijin raijin = character as Raijin;
                                spriteBatch.DrawString(game.debugFont, "raijin.vector:" + raijin.position.ToString(), new Vector2(0, 180), fontColor[0]);
                                spriteBatch.DrawString(game.debugFont, "raijin.isStaritingAttack:" + raijin.isStartingAttack.ToString(), new Vector2(0, 190), fontColor[0]);
                                spriteBatch.DrawString(game.debugFont, "raijin.isAttacking:" + raijin.isAttacking.ToString(), new Vector2(0, 200), fontColor[0]);
                                spriteBatch.DrawString(game.debugFont, "raijin.isEndingAttack:" + raijin.isEndingAttack.ToString(), new Vector2(0, 210), fontColor[0]);
                                //spriteBatch.DrawString(game.Arial2, "distanceToPlayer:"               + raijin.distanceD.ToString(), new Vector2(0, 220), fontColor[0]);
                            }
                        }
                        if (character is Rival)
                        {
                            Rival rival = character as Rival;
                            spriteBatch.DrawString(game.debugFont, "boss.vector:" + rival.position.ToString(), new Vector2(0, 180), fontColor[0]);
                            spriteBatch.DrawString(game.debugFont, "boss.isStaritingAttack:" + rival.isStartingAttack.ToString(), new Vector2(0, 190), fontColor[0]);
                            spriteBatch.DrawString(game.debugFont, "boss.isAttacking:" + rival.isAttacking.ToString(), new Vector2(0, 200), fontColor[0]);
                            spriteBatch.DrawString(game.debugFont, "boss.isEndingAttack:" + rival.isEndingAttack.ToString(), new Vector2(0, 210), fontColor[0]);
                            spriteBatch.DrawString(game.debugFont, "boss.isEndingAttack:" + rival.Left.ToString(), new Vector2(0, 220), fontColor[0]);
                            spriteBatch.DrawString(game.debugFont, "boss.turnsRight:" + rival.turnsRight.ToString(), new Vector2(0, 230), fontColor[0]);
                        }
                    }

                    spriteBatch.DrawString(game.debugFont, "boss.HP:" + stage.boss.HP.ToString(), new Vector2(0, 260), Color.Red);
                    break;
                    #endregion
                }
            }
        }