Пример #1
0
        public void ForcedWallconquestWar(TPlayObject PlayObject, string[] @Params)
        {
            string sCASTLENAME = @Params.Length > 0 ? @Params[0] : "";
            string s20;
            TGUild Guild = null;

            if (sCASTLENAME == "")
            {
                if (GameConfig.boGMShowFailMsg)
                {
                    PlayObject.SysMsg("命令格式: @" + base.Attributes.Name + " 城堡名称", TMsgColor.c_Red, TMsgType.t_Hint);
                }
                return;
            }
            TUserCastle Castle = M2Share.g_CastleManager.Find(sCASTLENAME);

            if (Castle != null)
            {
                Castle.m_boUnderWar = !Castle.m_boUnderWar; // 设置为可以攻城
                if (Castle.m_boUnderWar)                    // 正在攻城
                {
                    if (GuildManager.GuildList.Count > 0)   // 增加所有行会为攻城行会
                    {
                        for (int I = 0; I < GuildManager.GuildList.Count; I++)
                        {
                            Guild = GuildManager.GuildList[I];
                            Castle.m_AttackGuildList.Add(Guild);
                        }
                    }
                    Castle.m_boShowOverMsg        = false;
                    Castle.m_WarDate              = DateTime.Now;
                    Castle.m_dwStartCastleWarTick = HUtil32.GetTickCount();
                    Castle.StartWallconquestWar();
                    UserEngine.SendServerGroupMsg(Grobal2.SS_212, M2Share.nServerIndex, "");
                    s20 = "[" + Castle.m_sName + " 攻城战已经开始]";
                    UserEngine.SendBroadCastMsg(s20, TMsgType.t_System);
                    UserEngine.SendServerGroupMsg(Grobal2.SS_204, M2Share.nServerIndex, s20);
                    Castle.MainDoorControl(true);
                }
                else
                {
                    Castle.StopWallconquestWar();
                }
            }
            else
            {
                PlayObject.SysMsg(string.Format(GameMsgDef.g_sGameCommandSbkGoldCastleNotFoundMsg, sCASTLENAME), TMsgColor.c_Red, TMsgType.t_Hint);
            }
        }
Пример #2
0
        public void Button2Click(object sender, EventArgs e)
        {
            string s20;
            TGUild Guild;
            int    I;

            if (CurCastle == null)
            {
                Button2.Enabled = false;
                return;
            }
            CurCastle.m_boUnderWar = !CurCastle.m_boUnderWar;   // 设置为攻城
            if (CurCastle.m_boUnderWar)                         // 正在攻城
            {
                if (M2Share.g_GuildManager.GuildList.Count > 0) // 增加所有行会为攻城行会
                {
                    for (I = 0; I < M2Share.g_GuildManager.GuildList.Count; I++)
                    {
                        Guild = ((TGUild)(M2Share.g_GuildManager.GuildList[I]));
                        CurCastle.m_AttackGuildList.Add(Guild);
                    }
                }
                CurCastle.m_boShowOverMsg = false;
                CurCastle.m_WarDate       = DateTime.Now;
                //CurCastle.m_dwStartCastleWarTick = GetTickCount();
                CurCastle.StartWallconquestWar();
                //UserEngine.SendServerGroupMsg(Grobal2.SS_212, M2Share.nServerIndex, "");
                s20 = "[" + CurCastle.m_sName + " 攻城战已经开始]";
                M2Share.UserEngine.SendBroadCastMsg(s20, TMsgType.t_System);
                //UserEngine.SendServerGroupMsg(Grobal2.SS_204, M2Share.nServerIndex, s20);
                CurCastle.MainDoorControl(true);
                M2Share.MainOutMessage(s20);
                Button2.Text = "关闭攻城";
            }
            else
            {
                CurCastle.StopWallconquestWar();
                Button2.Text = "开始攻城";
            }
            Button2.Enabled = false;
        }
        public void ForcedWallconquestWar(string[] @Params, TPlayObject PlayObject)
        {
            string sCASTLENAME = @Params.Length > 0 ? @Params[0] : "";

            if (sCASTLENAME == "")
            {
                PlayObject.SysMsg("命令格式: @" + this.Attributes.Name + " 城堡名称", TMsgColor.c_Red, TMsgType.t_Hint);
                return;
            }
            TUserCastle Castle = M2Share.g_CastleManager.Find(sCASTLENAME);

            if (Castle != null)
            {
                Castle.m_boUnderWar = !Castle.m_boUnderWar;
                if (Castle.m_boUnderWar)
                {
                    Castle.m_dwStartCastleWarTick = HUtil32.GetTickCount();
                    Castle.StartWallconquestWar();

                    // UserEngine.SendServerGroupMsg(SS_212, nServerIndex, '');
                    string s20 = '[' + Castle.m_sName + "攻城战已经开始]";
                    UserEngine.SendBroadCastMsg(s20, TMsgType.t_System);

                    // UserEngine.SendServerGroupMsg(SS_204, nServerIndex, s20);
                    Castle.MainDoorControl(true);
                }
                else
                {
                    Castle.StopWallconquestWar();
                }
            }
            else
            {
                PlayObject.SysMsg(String.Format(GameMsgDef.g_sGameCommandSbkGoldCastleNotFoundMsg, sCASTLENAME), TMsgColor.c_Red, TMsgType.t_Hint);
            }
        }