示例#1
0
        public override void OnPrepareNewGame()
        {
            base.OnPrepareNewGame();

            m_moive = Game.Createlayer(0, 0, "moive", "game.asset.living.BossBgAsset", "out", 1, 1, 0);
            m_front = Game.Createlayer(680, 330, "font", "game.asset.living.boguoLeaderAsset", "out", 1, 1, 0);
            m_boss  = Game.CreateBoss(bossID, 770, -1500, -1, 1);

            m_boss.FallFrom(770, 301, "fall", 0, 2, 1000);
            m_boss.SetRelateDemagemRect(34, -35, 11, 18);
            m_boss.AddDelay(10);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1373.msg2"), 0, 6000);
            m_boss.PlayMovie("call", 5900, 0);
            m_moive.PlayMovie("in", 9000, 0);
            m_boss.PlayMovie("weakness", 10000, 5000);
            m_front.PlayMovie("in", 9000, 0);
            m_moive.PlayMovie("out", 15000, 0);
            //设置本关卡为Boss关卡,关卡胜利后,玩家可以翻一张牌
            Game.CanTakeCard = 1;
        }
示例#2
0
        public override void OnPrepareGameOver()
        {
            base.OnPrepareGameOver();

            if (m_boss.IsLiving == false && Game.GetAllLivingPlayers().Count != 0)
            {
                int   i = 0;
                Point p;
                foreach (Player player in Game.GetAllFightPlayers())
                {
                    player.Direction = 1;
                    p = new Point((i + 1) * 100, 700);
                    player.SetXY(p);
                    i++;
                }
                m_king = Game.CreateBoss(kingID, 500, 650, -1, 0);
                m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg25"), 2, 1000);
                m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg26"), 2, 5000, 4000);
            }
        }
示例#3
0
        public override void OnStartGame()
        {
            base.OnStartGame();
            m_moive = Game.Createlayer(0, 0, "moive", "game.asset.living.BossBgAsset", "out", 1, 0);
            m_front = Game.Createlayer(680, 330, "font", "game.asset.living.boguoLeaderAsset", "out", 1, 0);
            m_boss  = Game.CreateBoss(bossID, 770, -1500, -1, 1);

            m_boss.FallFrom(770, 301, "fall", 0, 2, 1000);
            m_boss.SetRelateDemagemRect(34, -35, 11, 18);
            m_boss.AddDelay(10);
            m_boss.Say("你们胆敢闯入我的地盘,准备受死吧!", 0, 6000);
            m_boss.PlayMovie("call", 5900, 0);
            m_moive.PlayMovie("in", 9000, 0);
            m_boss.PlayMovie("weakness", 10000, 5000);
            m_front.PlayMovie("in", 9000, 0);
            m_moive.PlayMovie("out", 15000, 0);

            //设置本关卡为Boss关卡,关卡胜利后,玩家可以翻一张牌
            Game.BossCardCount = 1;
        }
示例#4
0
        public override void OnPrepareNewGame()
        {
            base.OnPrepareNewGame();

            //for (int i = 0; i < Game.PlayerCount; i++)
            //{
            //    NPCTotalCount++;

            //    Npcs.Add(Game.CreateBoss(NpcID, 1));
            //}

            //Game.CanTakeCard = 1;
            m_boss = Game.CreateBoss(npcID, 1);
            m_boss.SetRelateDemagemRect(-50, -175, 68, 89);
            //m_boss.Blood = (int)(m_boss.Blood * Game.GetTeamFightPower() / 2);
            //m_boss.BaseDamage = (int)(m_boss.BaseDamage * Game.GetTeamFightPower() / 10);
            //m_boss.BaseGuard = (int)(m_boss.BaseGuard * Game.GetTeamFightPower() / 10);
            //m_boss.Defence = (int)(m_boss.Defence * Game.GetTeamFightPower() / 2);
            //m_boss.Lucky = (int)(m_boss.Lucky * Game.GetTeamFightPower() / 200);
        }
示例#5
0
        public override void OnPrepareNewGame()
        {
            base.OnPrepareNewGame();

            m_kingMoive = Game.Createlayer(0, 0, "kingmoive", "game.asset.living.BossBgAsset", "out", 1, 1, 0);
            m_kingFront = Game.Createlayer(720, 495, "font", "game.asset.living.boguoKingAsset", "out", 1, 1, 0);
            m_king      = Game.CreateBoss(m_state, 888, 590, -1, 0);

            m_king.FallFrom(888, 690, "fall", 0, 2, 1000);
            m_king.SetRelateDemagemRect(-21, -87, 72, 59);
            m_king.AddDelay(10);

            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1176.msg2"), 0, 3000);
            m_kingMoive.PlayMovie("in", 9000, 0);
            m_kingFront.PlayMovie("in", 9000, 0);
            m_kingMoive.PlayMovie("out", 13000, 0);
            m_kingFront.PlayMovie("out", 13400, 0);
            turn = Game.TurnIndex;

            Game.BossCardCount = 1;
        }
示例#6
0
        public override void OnStartGame()
        {
            base.OnStartGame();
            Game.SendPassDrama(true);

            //再试一次跳过剧情动画
            if (Game.WantTryAgain == 1 || Game.IsPassDrama)
            {
                return;
            }

            Game.SendPlayBackgroundSound(false);
            Game.AddAction(new LockFocusAction(false, 0, 0));
            m_kingMoive = Game.Createlayer(0, 0, "kingmoive", "game.asset.living.BossBgAsset", "out", 1, 1, 0);
            m_front     = Game.Createlayer(725, 395, "font", "game.asset.living.BombKingAsset", "out", 1, 1, 0);
            m_king      = Game.CreateBoss(kingID, 888, 715, 1, 0);
            Game.AddAction(new FocusAction(m_king.X, m_king.Y - 90, 0, 0, 0));

            m_king.PlayMovie("cry", 4000, 2000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg2"), 2, 4000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg3"), 2, 9000);

            m_king.MoveTo(500, m_king.Y, "walk", 13000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg4"), 2, 21000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg5"), 2, 25000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg6"), 2, 29000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg7"), 2, 33000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg8"), 2, 37000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg9"), 2, 41000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg10"), 2, 45000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg11"), 2, 49000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg12"), 2, 53000, 4000);

            foreach (Player player in Game.GetAllFightPlayers())
            {
                Game.SendLivingToTop(player);
            }
        }
示例#7
0
        public override void OnNewTurnStarted()
        {
            base.OnNewTurnStarted();
            if (m_boss.State == 0)
            {
                m_boss.SetRelateDemagemRect(-41, -187, 83, 140);
            }

            if (m_king != null)
            {
                Game.RemoveLiving(m_king.Id);
                m_king.Die();
                m_king = null;
                Game.AddAction(new LockFocusAction(true, 0, 0));
                m_boss.SetRect(m_boss.NpcInfo.X, m_boss.NpcInfo.Y, m_boss.NpcInfo.Width, m_boss.NpcInfo.Height);
            }

            if (!isSend)
            {
                Game.SendPassDrama(false);
                isSend = true;
            }
        }
示例#8
0
 public override void OnBeginNewTurn()
 {
     base.OnBeginNewTurn();
     if (!blowNpc.IsLiving)
     {
         blowNpc        = Game.CreateBoss(blowNpcID, 600, 400, 1, 3);
         blowNpc.Degree = 3;
     }
     foreach (Player player in Game.GetAllFightPlayers())
     {
         if (player.IsLiving && player.X > 500 && player.X < 1450)
         {
             player.AddEffect(new ContinueReduceBloodEffect(800, 1, null), 0);
         }
     }
     for (int i = 0; i < 3 - npcCount; i++)
     {
         int       index = Game.Random.Next(0, npcBirthPoint.Length);
         SimpleNpc npc   = Game.CreateNpc(shortNpcID, npcBirthPoint[index].X, npcBirthPoint[index].Y, 1);
         npc.Degree = 2;
         someNpc.Add(npc);
     }
 }
示例#9
0
        public override void OnPrepareNewGame()
        {
            base.OnPrepareNewGame();
            doorNpc = Game.CreateNpc(doorNpcID, 1450, 400, 1);
            doorNpc.SetRelateDemagemRect(-26, -170, 52, 170);
            doorNpc.Degree = 1;

            blowNpc        = Game.CreateBoss(blowNpcID, 600, 400, 1, 3);
            blowNpc.Degree = 3;
            gunNpc         = Game.CreateBoss(gunNpcID, 1400, 400, 1, 3);
            gunNpc.SetRelateDemagemRect(-1000, -1000, 2, 2);

            int index = Game.Random.Next(0, npcBirthPoint.Length);

            someNpc.Add(Game.CreateNpc(shortNpcID, npcBirthPoint[index].X, npcBirthPoint[index].Y, 1));
            index = Game.Random.Next(0, npcBirthPoint.Length);
            someNpc.Add(Game.CreateNpc(shortNpcID, npcBirthPoint[index].X, npcBirthPoint[index].Y, 1));
            index = Game.Random.Next(0, npcBirthPoint.Length);
            someNpc.Add(Game.CreateNpc(shortNpcID, npcBirthPoint[index].X, npcBirthPoint[index].Y, 1));
            someNpc[0].Degree = 2;
            someNpc[1].Degree = 2;
            someNpc[2].Degree = 2;
        }
示例#10
0
        public override void OnStartGame()
        {
            base.OnStartGame();

            m_king = Game.CreateBoss(bossID, 750, 510, -1, 0);
            m_king.SetRelateDemagemRect(-41, -187, 83, 140);
            m_king.AddDelay(16);

            /*
             * int i = 0;
             * foreach (Player player in Game.GetAllFightPlayers())
             * {
             *  player.Direction = 1;
             *  player.SetXY((i + 1) * 100, 520);
             *  i++;
             * }
             * m_preKing = Game.CreateBoss(21, 600, 510, -1, 0);
             * m_preKing.Say("啊~~我的头好痛……为什么我会在这里!?炸弹王马迪亚斯呢?………..我记起来了。", 1000);
             * m_preKing.Say("感谢你们高贵的勇士,我是啵咕国王尼尔鲁奥要不是有你们的帮助,我可能永远也无法摆脱马迪亚斯的控制。", 3000);
             * m_preKing.Say("几年前炸弹人向啵咕国发动战争,在一次战斗中我不小心中了炸弹王马迪亚斯的诡计被他用精神枷锁诅咒控制。", 5000);
             * m_preKing.Say("在刚刚和你们的战斗中他的诅咒被破坏,才让我重获自由! 时间不多了他也肯定感知到诅咒的消失,可能正赶往这里!", 7000);
             * m_preKing.Say("马迪亚斯非常强大,现在的我非常虚弱可能抵挡不了多久,在他赶来之前请你们赶快离开这里!", 9000);
             */
        }
示例#11
0
        public override bool CanGameOver()
        {
            base.CanGameOver();
            //回合数到100的时候结束游戏
            if (Game.TurnIndex > Game.MissionInfo.TotalTurn - 1)
            {
                return(true);
            }

            if (m_king.IsLiving == false)
            {
                if (m_state == firstBossID)
                {
                    m_state++;
                }
            }

            if (m_state == secondBossID && m_secondKing == null)
            {
                m_kingMoive  = Game.Createlayer(0, 0, "moive", "game.asset.living.BossBgAsset", "out", 1, 0);
                m_secondKing = Game.CreateBoss(m_state, m_king.X, m_king.Y, m_king.Direction, 1);
                Game.RemoveLiving(m_king.Id);

                if (m_secondKing.Direction == -1)
                {
                    m_secondKing.SetRectBomb(24, -159, 66, 38);
                    m_secondKing.SetRelateDemagemRect(58, -142, 5, 3);
                }
                else
                {
                    m_secondKing.SetRectBomb(-90, -159, 66, 38);
                    m_secondKing.SetRelateDemagemRect(-63, -142, 5, 3);
                }


                m_secondKing.Say("<span class='red'>你们把我激怒了,我饶不了你们!</span>", 0, 3000);
                m_kingMoive.PlayMovie("in", 5000, 0);
                m_secondKing.PlayMovie("weakness", 6100, 0);
                m_kingMoive.PlayMovie("out", 12000, 0);

                List <Player> players  = Game.GetAllFightPlayers();
                int           minDelay = Game.FindRandomPlayer().Delay;
                foreach (Player player in players)
                {
                    if (player.Delay < minDelay)
                    {
                        minDelay = player.Delay;
                    }
                }

                m_secondKing.AddDelay(minDelay - 2000);
                turn = Game.TurnIndex;
            }

            if (m_secondKing != null && m_secondKing.IsLiving == false)
            {
                m_leftWall  = Game.FindPhysicalObjByName("wallLeft", false);
                m_rightWall = Game.FindPhysicalObjByName("wallRight", false);

                if (m_leftWall != null)
                {
                    Game.RemovePhysicalObj(m_leftWall[0], true);
                }

                if (m_rightWall != null)
                {
                    Game.RemovePhysicalObj(m_rightWall[0], true);
                }

                PhysicalObj objKing = Game.CreatePhysicalObj(m_secondKing.X, m_secondKing.Y, "king", "game.living.LivingRecover005", "0", 0, 0);
                objKing.PlayMovie("1", 0, 2000);
                if (objKing.CurrentAction == "1")
                {
                    m_kill++;
                    return(true);
                }
            }

            return(false);
        }
示例#12
0
        public override void OnPrepareNewGame()
        {
            base.OnPrepareNewGame();
            m_boss = Game.CreateBoss(bossID, 888, 590, -1, 0);
            m_boss.SetRelateDemagemRect(-41, -187, 83, 140);
            m_boss.FallFrom(888, 690, "fall", 0, 2, 1000);
            m_front.PlayMovie("in", 2000, 0);
            m_kingMoive.PlayMovie("in", 1000, 0);
            m_kingMoive.PlayMovie("out", 4800, 0);
            m_boss.AddDelay(16);

            Game.CanTakeCard = 1;

            //再试一次跳过剧情动画
            if (Game.WantTryAgain == 1 || Game.IsPassDrama)
            {
                Game.AddAction(new PlayBackgroundSoundAction(true, 0));
                if (m_king != null)
                {
                    m_king.Die();
                }
                return;
            }

            m_boss.SetRect(-191, -226, 44, 58);
            m_king.ChangeDirection(1, 5000);

            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg13"), 2, 6000);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg14"), 2, 10000);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg15"), 2, 14000);
            m_boss.PlayMovie("cast", 18500, 0);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg16"), 2, 18000);


            Game.AddAction(new FocusAction(m_king.X, m_king.Y - 30, 0, 22000, 0));
            m_king.ChangeDirection(-1, 22000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg17"), 2, 23000);
            m_king.ChangeDirection(1, 25000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg18"), 2, 27000);
            if (m_king.ShootPoint(m_boss.X, m_boss.Y, 61, 1000, 10000, 1, 1, 28300))
            {
                m_king.PlayMovie("beat2", 27500, 0);
            }
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg19"), 2, 31000);

            Game.AddAction(new FocusAction(736, 515, 0, 29500, 0));

            m_boss.PlayMovie("beatA", 28300, 0);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg20"), 2, 28500);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg21"), 2, 36000);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg22"), 2, 40000);

            m_boss.PlayMovie("mantra", 46000, 0);
            m_boss.Seal(m_king, 2, 48000);
            m_boss.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg23"), 2, 44000);

            m_king.ChangeDirection(-1, 50000);
            m_king.Say(LanguageMgr.GetTranslation("GameServerScript.AI.Messions.CHM1377.msg24"), 2, 51000);
            m_king.OffSeal(m_king, 55000);
            m_king.PlayMovie("out", 55000, 0);
            Game.AddAction(new PlayBackgroundSoundAction(true, 55000));
        }
 public override void OnDiedEvent()
 {
     base.OnDiedEvent();
     DeadBoss = (SimpleBoss)Body;
 }
 public override void OnCreated()
 {
     base.OnCreated();
     m_attackTurn = 0;
     DeadBoss     = null;
 }