static QueueStats()
 {
     LfgDungeons = new DBC<LfgDungeonsRec>(new IntPtr(Offsets.dbc.LfgDungeons.val));
     BattleMasterList = new DBC<BattleMasterListRec>(new IntPtr(Offsets.dbc.BattleMasterList.val));
     Map = new DBC<MapRec>(new IntPtr(Offsets.dbc.Map.val));
 }
Beispiel #2
0
 static void SetRoleAuthority(DBC.Role role,string code,bool value)
 {
     try
     {
         var authoriy = new DBC.Authority(code);
         var sql = "update " + DBTables.RoleAuthority + " set value=? where roleid=? and authorityid=?";
         DB.SExecuteNonQuery(sql, value, role.ID, authoriy.ID);
     }
     catch { }
 }
Beispiel #3
0
        private static void initialize()
        {
            OffsetXML off = OffsetXML.getLocal<OffsetXML>(Properties.Settings.Default.OffSetXML);

            Offsets.playerName = off.playerName;
            Offsets.playerRealm = off.playerRealm;
            Offsets.lfgQueueStats = off.lfgQueueStats;
            Offsets.lfgProposal = off.lfgProposal;
            Offsets.bgQueueStats = off.bgQueueStats;
            Offsets.dbc = off.dbc;
        }
Beispiel #4
0
        public WorldLightEntry(DBC.Light light)
        {
            for (int i = 0; i < 18; ++i)
            {
                mColorTables.Add(new List<Vector3>());
                mTimeTables.Add(new List<uint>());
            }

            mParams = DBC.DBCStores.LightParams[light.skyParam];
            mLight = light;
            Position = new Vector3(mLight.x / 36.0f, mLight.y / 36.0f, mLight.z / 36.0f);
            InitColorTables();
        }
Beispiel #5
0
 public static bool Check(DBC.User user,params string[] codes)
 {
     var sql = "select roleid from " + DBTables.UserRole + " where userid=?";
     var res = DB.SExecuteReader(sql, user.ID);
     var b = false;
     foreach (var item in res)
     {
         var role = new DBC.Role(Convert.ToInt32(item[0]));
         b |= Check(role, codes);
         if (b)
             break;
     }
     return b;
 }
Beispiel #6
0
        static void ReadMapsDBC()
        {
            const string path = @"DBFilesClient\Map.dbc";
            var sw = Stopwatch.StartNew();
            var dbc = new DBC<MapRecord>(path);
            sw.Stop();

            Console.WriteLine("Loaded {0} records from '{1}' in {2}ms", dbc.Rows.Count(), System.IO.Path.GetFileName(path), sw.ElapsedMilliseconds);

            foreach (var row in dbc.Rows)
            {
                if (row == null) continue;
                Console.WriteLine("{0} - '{1}' - '{2}'", row.ID, row.MapNameLang, row.Directory);
            }
        }
Beispiel #7
0
 public void SetInfo(DBC.MapEntry map, float lightX, float lightY)
 {
     mLightPos = new PointF(lightX, lightY);
     mEntry = map;
     try
     {
         ADT.Minimap minimap = new ADT.Minimap(map.InternalName, map.ID);
         InitialImage = minimap.CreateImage().Clone() as Bitmap;
         DrawLightPoint(lightX, lightY);
         minimapControl1.Minimap = InitialImage.Clone() as Bitmap;
         DrawLightRadius();
         ContinentName = map.InternalName;
         minimapControl1.PointSelected += new SharpWoW.Controls.MinimapControl.PointSelectedDlg(_PointSelected);
     }
     catch (Exception)
     {
         Close();
     }
 }
Beispiel #8
0
    public static bool Check(DBC.Role role,params string[] codes)
    {
        var res = true;
        foreach (string code in codes)
        {
            try
            {
                var authority = new DBC.Authority(code);
                var sql = "select value from " + DBTables.RoleAuthority + " where roleid=? and authorityid=?";
                var res11 = DB.SExecuteScalar(sql, role.ID, authority.ID);

                res &= Convert.ToBoolean(res11);
                if (res == false)
                    break;
            }
            catch { }
        }
        return res;
    }
Beispiel #9
0
 internal BTreeCursor(DBC dbc, uint pagesize, CachePriority p)
     : base(dbc, DatabaseType.BTREE, pagesize, p)
 {
 }
Beispiel #10
0
 internal RecnoCursor(DBC dbc, uint pagesize, CachePriority p)
     : base(dbc, DatabaseType.RECNO, pagesize, p)
 {
 }
Beispiel #11
0
 internal HashCursor(DBC dbc, uint pagesize, CachePriority p)
     : base(dbc, DatabaseType.HASH, pagesize, p)
 {
 }
Beispiel #12
0
        public MPQTriangleSupplier()
        {
            string[] archiveNames =
            {
                "patch.MPQ",
                "enUS\\patch-enUS.MPQ",
                "enGB\\patch-enGB.MPQ",
                "lichking.MPQ",
                "common-2.MPQ",
                "common.MPQ",
                "expansion.MPQ",
                "enUS\\lichking-locale-enUS.MPQ","enUS\\locale-enUS.MPQ",  "enUS\\expansion-locale-enUS.MPQ",
                "enGB\\lichking-locale-enGB.MPQ","enGB\\locale-enGB.MPQ",  "enGB\\expansion-locale-enGB.MPQ",
                "enUS\\base-enUS.MPQ",
                "enGB\\base-enGB.MPQ",
                "enUS\\backup-enUS.MPQ",
                "enGB\\backup-enGB.MPQ"
            };

            //StormDll.ArchiveSet archive = null;
            Directory.SetCurrentDirectory(AppDomain.CurrentDomain.BaseDirectory);
            archive = new ArchiveSet();
            string regGameDir = archive.SetGameDirFromReg();

            //string gameDir = @"C:\WoW 335\Data\";
            //archive.SetGameDir(gameDir);

            zoneToMapId  = new Dictionary <string, int>();
            mapIdToFile  = new Dictionary <int, string>();
            areaIdToName = new Dictionary <int, string>();

            PathGraph.Log("Game dir is " + regGameDir);
            archive.AddArchives(archiveNames);
            modelmanager = new ModelManager(archive, 80);
            wmomanager   = new WMOManager(archive, modelmanager, 30);


            archive.ExtractFile("DBFilesClient\\AreaTable.dbc", "PPather\\AreaTable.dbc");
            var areas = new DBC();
            var af    = new DBCFile("PPather\\AreaTable.dbc", areas);

            for (int i = 0; i < areas.recordCount; i++)
            {
                var    AreaID  = (int)areas.GetUint(i, 0);
                var    WorldID = (int)areas.GetUint(i, 1);
                var    Parent  = (int)areas.GetUint(i, 2);
                string Name    = areas.GetString(i, 11);

                areaIdToName.Add(AreaID, Name);


                if (WorldID != 0 && WorldID != 1 && WorldID != 530)
                {
                    ////   PathGraph.Log(String.Format("{0,4} {1,3} {2,3} {3}", AreaID, WorldID, Parent, Name));
                }
                //0      uint    AreaID
                //1     uint    Continent (refers to a WorldID)
                //2     uint    Region (refers to an AreaID)
            }

            for (int i = 0; i < areas.recordCount; i++)
            {
                var    AreaID  = (int)areas.GetUint(i, 0);
                var    WorldID = (int)areas.GetUint(i, 1);
                var    Parent  = (int)areas.GetUint(i, 2);
                string Name    = areas.GetString(i, 11);

                string TotalName = "";
                //areaIdToName.Add(AreaID, Name);
                //areaIdParent.Add(AreaID, Parent);
                string ParentName = "";
                if (!areaIdToName.TryGetValue(Parent, out ParentName))
                {
                    TotalName = ":" + Name;
                }
                else
                {
                    TotalName = Name + ":" + ParentName;
                }

                if (!zoneToMapId.ContainsKey(Name) && !zoneToMapId.ContainsKey(TotalName))
                {
                    zoneToMapId.Add(TotalName, WorldID);
                    //PathGraph.Log(TotalName + " => " + WorldID);
                }
                else
                {
                    int id;
                    zoneToMapId.TryGetValue(TotalName, out id);
                    ////  PathGraph.Log("Duplicate: " + TotalName + " " + WorldID +" " + id);
                }
                //0      uint    AreaID
                //1     uint    Continent (refers to a WorldID)
                //2     uint    Region (refers to an AreaID)
            }
        }
 public OrderController()
 {
     db = new DBC();
 }
Beispiel #14
0
        public static EmbedBuilder printAvatarStatus(SocketCommandContext context, SocketGuildUser otherUser = null)
        {
            ulong  guildId    = context.Guild.Id;
            ulong  userId     = context.User.Id;
            string userAvatar = context.User.GetAvatarUrl();
            string username   = context.User.Username;

            if (otherUser != null)
            {
                userId     = otherUser.Id;
                userAvatar = otherUser.GetAvatarUrl();
                username   = otherUser.Username;
            }

            var userAvatarData = GuildUserAvatarCore.getUserData(guildId, userId);
            int userLevel      = Convert.ToInt32(userAvatarData[DBM_Guild_User_Avatar.Columns.chat_level].ToString());
            int nextExp        = (userLevel + 1) * 100;
            int userExp        = Convert.ToInt32(userAvatarData[DBM_Guild_User_Avatar.Columns.chat_exp].ToString());

            Discord.Color color = Config.Doremi.EmbedColor;                                 //default color
            int           customColorR = -1;  int customColorG = -1; int customColorB = -1; //custom color

            if (userAvatarData[DBM_Guild_User_Avatar.Columns.color].ToString() != "")
            {
                string[] splittedColor = userAvatarData[DBM_Guild_User_Avatar.Columns.color].ToString().Split(',');
                customColorR = Convert.ToInt32(splittedColor[0]); customColorG = Convert.ToInt32(splittedColor[1]);
                customColorB = Convert.ToInt32(splittedColor[2]);
            }

            string nickname = "";

            if (userAvatarData[DBM_Guild_User_Avatar.Columns.nickname].ToString() != "")
            {
                nickname = $" ({userAvatarData[DBM_Guild_User_Avatar.Columns.nickname].ToString()})";
            }

            EmbedBuilder eb = new EmbedBuilder()
                              .WithTitle($"{username}{nickname}")
                              .WithThumbnailUrl(userAvatar);

            if (customColorR != -1)
            {
                eb.WithColor(new Discord.Color(customColorR, customColorG, customColorB));
            }
            else
            {
                eb.WithColor(color);
            }

            //information
            if (userAvatarData[DBM_Guild_User_Avatar.Columns.info].ToString() != "")
            {
                eb.Description = $"{userAvatarData[DBM_Guild_User_Avatar.Columns.info].ToString()}";
            }

            eb.AddField("Level:", $"{userLevel}", true);
            eb.AddField("Exp:", $"{userExp}/{nextExp}", true);

            //search birthday if exists
            string query = $"SELECT * " +
                           $" FROM {DBM_Guild_User_Birthday.tableName} " +
                           $" WHERE {DBM_Guild_User_Birthday.Columns.id_guild}=@{DBM_Guild_User_Birthday.Columns.id_guild} AND " +
                           $" {DBM_Guild_User_Birthday.Columns.id_user}=@{DBM_Guild_User_Birthday.Columns.id_user}";
            Dictionary <string, object> columnsFilter = new Dictionary <string, object>();

            columnsFilter[DBM_Guild_User_Birthday.Columns.id_guild] = guildId.ToString();
            columnsFilter[DBM_Guild_User_Birthday.Columns.id_user]  = userId.ToString();
            var result = new DBC().selectAll(query, columnsFilter);

            foreach (DataRow row in result.Rows)
            {
                if (row[DBM_Guild_User_Birthday.Columns.birthday_date].ToString() != "")
                {
                    var    parsedBirthdayDate = DateTime.Parse(row[DBM_Guild_User_Birthday.Columns.birthday_date].ToString());
                    string birthdayDate       = parsedBirthdayDate.ToString("dd MMMM");//default

                    if (Convert.ToBoolean(row[DBM_Guild_User_Birthday.Columns.show_year]))
                    {
                        birthdayDate = parsedBirthdayDate.ToString("dd-MMMM-yyyy");//default
                    }

                    eb.AddField("Birthday Date:", birthdayDate, true);
                }
            }

            //image_url for banner
            if (userAvatarData[DBM_Guild_User_Avatar.Columns.image_url].ToString() != "")
            {
                eb.WithImageUrl(userAvatarData[DBM_Guild_User_Avatar.Columns.image_url].ToString());
            }

            eb.WithFooter(@$ "Created at:{DateTime.Parse(userAvatarData[DBM_Guild_User_Avatar.Columns.created_at].ToString())
                .ToString(" MM / dd / yyyy ")}");
Beispiel #15
0
 public FileController(DBC context, IHostingEnvironment host)
 {
     _context     = context;
     _folderPath += host.ContentRootPath + "Files/";
 }
Beispiel #16
0
            public int Good3(List <int> list)
            {
                DBC.Pre(list != null, "list is null");

                return(list[list.Count - 1]);
            }
Beispiel #17
0
            private void DoStackPushes(List <StackEntry> stack, int index, List <StackEntry> oldStack)
            {
                long?value;

                TypedInstruction instruction = m_instructions[index];

                switch (instruction.Untyped.OpCode.Code)
                {
                case Code.Add:
                case Code.Sub:
                case Code.Mul:
                case Code.Div:
                case Code.Div_Un:
                case Code.Rem:
                case Code.Rem_Un:
                case Code.And:
                case Code.Or:
                case Code.Xor:
                case Code.Shl:
                case Code.Shr:
                case Code.Shr_Un:
                case Code.Neg:
                case Code.Not:
                case Code.Add_Ovf:
                case Code.Add_Ovf_Un:
                case Code.Mul_Ovf:
                case Code.Mul_Ovf_Un:
                case Code.Sub_Ovf:
                case Code.Sub_Ovf_Un:
                    stack.Add(new StackEntry(null, index));                                     // could compute these, but we don't care too much about integer values atm
                    break;

                case Code.Arglist:                                              // push non-null
                case Code.Box:
                case Code.Ldarga:
                case Code.Ldarga_S:
                case Code.Ldelema:
                case Code.Ldflda:
                case Code.Ldftn:
                case Code.Ldind_Ref:
                case Code.Ldloca:
                case Code.Ldloca_S:
                case Code.Ldobj:
                case Code.Ldsflda:
                case Code.Ldstr:
                case Code.Ldtoken:
                case Code.Ldvirtftn:
                case Code.Localloc:
                case Code.Mkrefany:
                case Code.Newarr:
                case Code.Newobj:
                case Code.Refanytype:
                case Code.Refanyval:
                case Code.Unbox:
                case Code.Unbox_Any:
                    stack.Add(new StackEntry(1, index));
                    break;

                case Code.Call:
                case Code.Calli:
                case Code.Callvirt:
                    Call call = instruction as Call;
                    if (call.Target.ReturnType.ReturnType.ToString() != "System.Void")
                    {
                        stack.Add(new StackEntry(null, index));
                    }
                    break;

                case Code.Castclass:
                    value = oldStack.Back().Value;
                    if (value.HasValue && value.Value == 0)
                    {
                        stack.Add(new StackEntry(0, index));
                    }
                    else
                    {
                        stack.Add(new StackEntry(1, index));
                    }
                    break;

                case Code.Ceq:                                          // push indeterminate
                case Code.Cgt:
                case Code.Cgt_Un:
                case Code.Clt:
                case Code.Clt_Un:
                case Code.Ckfinite:
                case Code.Conv_I1:
                case Code.Conv_I2:
                case Code.Conv_I4:
                case Code.Conv_I8:
                case Code.Conv_U4:
                case Code.Conv_U8:
                case Code.Conv_R4:
                case Code.Conv_R8:
                case Code.Conv_U2:
                case Code.Conv_U1:
                case Code.Conv_I:
                case Code.Conv_R_Un:
                case Code.Conv_U:
                case Code.Ldelem_I1:
                case Code.Ldelem_U1:
                case Code.Ldelem_I2:
                case Code.Ldelem_U2:
                case Code.Ldelem_I4:
                case Code.Ldelem_U4:
                case Code.Ldelem_I8:
                case Code.Ldelem_I:
                case Code.Ldelem_R4:
                case Code.Ldelem_R8:
                case Code.Ldelem_Ref:
                case Code.Ldelem_Any:
                case Code.Ldind_I1:
                case Code.Ldind_U1:
                case Code.Ldind_I2:
                case Code.Ldind_U2:
                case Code.Ldind_I4:
                case Code.Ldind_U4:
                case Code.Ldind_I8:
                case Code.Ldind_I:
                case Code.Ldind_R4:
                case Code.Ldind_R8:
                case Code.Ldfld:
                case Code.Ldsfld:
                case Code.Ldlen:
                case Code.Sizeof:
                    stack.Add(new StackEntry(null, index));
                    break;

                case Code.Conv_Ovf_I1:                                  // push previous value
                case Code.Conv_Ovf_U1:
                case Code.Conv_Ovf_I2:
                case Code.Conv_Ovf_U2:
                case Code.Conv_Ovf_I4:
                case Code.Conv_Ovf_U4:
                case Code.Conv_Ovf_I8:
                case Code.Conv_Ovf_U8:
                case Code.Conv_Ovf_I:
                case Code.Conv_Ovf_U:
                case Code.Conv_Ovf_I1_Un:
                case Code.Conv_Ovf_I2_Un:
                case Code.Conv_Ovf_I4_Un:
                case Code.Conv_Ovf_I8_Un:
                case Code.Conv_Ovf_U1_Un:
                case Code.Conv_Ovf_U2_Un:
                case Code.Conv_Ovf_U4_Un:
                case Code.Conv_Ovf_U8_Un:
                case Code.Conv_Ovf_I_Un:
                case Code.Conv_Ovf_U_Un:
                    value = oldStack.Back().Value;
                    stack.Add(new StackEntry(value, index));
                    break;

                case Code.Dup:
                    value = oldStack.Back().Value;
                    stack.Add(new StackEntry(value, index));
                    stack.Add(new StackEntry(value, index));
                    break;

                case Code.Isinst:
                    value = oldStack.Back().Value;
                    if (value.HasValue && value.Value == 0)
                    {
                        stack.Add(new StackEntry(0, index));
                    }
                    else
                    {
                        stack.Add(new StackEntry(null, index));
                    }
                    break;

                case Code.Ldarg_0:
                case Code.Ldarg_1:
                case Code.Ldarg_2:
                case Code.Ldarg_3:
                case Code.Ldarg:
                case Code.Ldarg_S:
                    LoadArg arg = instruction as LoadArg;
                    value = m_state.Arguments[arg.Arg];
                    stack.Add(new StackEntry(value, index));
                    break;

                case Code.Ldc_I4_M1:
                case Code.Ldc_I4_0:
                case Code.Ldc_I4_1:
                case Code.Ldc_I4_2:
                case Code.Ldc_I4_3:
                case Code.Ldc_I4_4:
                case Code.Ldc_I4_5:
                case Code.Ldc_I4_6:
                case Code.Ldc_I4_7:
                case Code.Ldc_I4_8:
                case Code.Ldc_I4_S:
                case Code.Ldc_I4:
                case Code.Ldc_I8:
                    LoadConstantInt constant = instruction as LoadConstantInt;
                    stack.Add(new StackEntry(constant.Value, index));
                    break;

                case Code.Ldc_R4:
                case Code.Ldc_R8:
                    LoadConstantFloat constant2 = instruction as LoadConstantFloat;
                    if (constant2.Value == 0.0)
                    {
                        stack.Add(new StackEntry(0, index));
                    }
                    else
                    {
                        stack.Add(new StackEntry(null, index));
                    }
                    break;

                case Code.Ldloc_0:
                case Code.Ldloc_1:
                case Code.Ldloc_2:
                case Code.Ldloc_3:
                case Code.Ldloc:
                case Code.Ldloc_S:
                    LoadLocal local = instruction as LoadLocal;
                    value = m_state.Locals[local.Variable];
                    stack.Add(new StackEntry(value, index));
                    break;

                case Code.Ldnull:                                                               // push null
                    stack.Add(new StackEntry(0, index));
                    break;

                default:
                    DBC.Assert(instruction.Untyped.OpCode.StackBehaviourPush == StackBehaviour.Push0, "Expected {0} to push nothing", instruction.Untyped.OpCode);
                    break;
                }
            }
Beispiel #18
0
        public static async Task updateChatExp(DiscordSocketClient client,
                                               SocketTextChannel textChannel, ulong guildId, SocketUser user, int amount)
        {
            //return type: boolean: true if level up
            //update chat exp & level up
            var             userId        = user.Id;
            SocketGuildUser guildUser     = (SocketGuildUser)user;
            var             username      = user.Username;
            var             userAvatarUrl = user.GetAvatarUrl();

            int maxLevel = 200;
            //check if user data exists/not
            DBC    db    = new DBC();
            string query = $"SELECT * " +
                           $" FROM {DBM_Guild_User_Avatar.tableName} " +
                           $" WHERE {DBM_Guild_User_Avatar.Columns.id_guild}=@{DBM_Guild_User_Avatar.Columns.id_guild} AND " +
                           $" {DBM_Guild_User_Avatar.Columns.id_user}=@{DBM_Guild_User_Avatar.Columns.id_user}";

            Dictionary <string, object> colSelect = new Dictionary <string, object>();

            colSelect[DBM_Guild_User_Avatar.Columns.id_guild] = guildId.ToString();
            colSelect[DBM_Guild_User_Avatar.Columns.id_user]  = userId.ToString();
            DataTable dt = db.selectAll(query, colSelect);

            if (dt.Rows.Count <= 0)
            {
                insertUserData(guildId, userId);
            }

            var userData = getUserData(guildId, userId);
            int level    = Convert.ToInt32(userData[DBM_Guild_User_Avatar.Columns.chat_level]);
            int exp      = Convert.ToInt32(userData[DBM_Guild_User_Avatar.Columns.chat_exp]);
            int nextExp  = (level + 1) * 100;

            if (level <= maxLevel)
            {
                if (exp + amount >= nextExp)
                {
                    //Check if level up notification channel is existed
                    var guildData = Config.Guild.getGuildData(guildId);
                    if (guildData[DBM_Guild.Columns.id_channel_notification_chat_level_up].ToString() != "")
                    {
                        //check autorole if exists
                        query = $"SELECT * " +
                                $" FROM {DBM_Guild_Autorole_Level.tableName} " +
                                $" WHERE {DBM_Guild_Autorole_Level.Columns.id_guild}=@{DBM_Guild_Autorole_Level.Columns.id_guild} AND " +
                                $" {DBM_Guild_Autorole_Level.Columns.level_min}=@{DBM_Guild_Autorole_Level.Columns.level_min}";
                        Dictionary <string, object> column = new Dictionary <string, object>();
                        column[DBM_Guild_Autorole_Level.Columns.id_guild]  = guildId.ToString();
                        column[DBM_Guild_Autorole_Level.Columns.level_min] = level + 1;
                        var   autoroleData = new DBC().selectAll(query, column);
                        ulong idAutorole = 0; ulong idAutoroleRemove = 0;
                        foreach (DataRow row in autoroleData.Rows)
                        {
                            idAutorole = Convert.ToUInt64(row[DBM_Guild_Autorole_Level.Columns.id_role].ToString());
                            if (row[DBM_Guild_Autorole_Level.Columns.id_role_remove].ToString() != "")
                            {
                                idAutoroleRemove = Convert.ToUInt64(row[DBM_Guild_Autorole_Level.Columns.id_role_remove].ToString());
                            }
                        }

                        EmbedBuilder eb = new EmbedBuilder()
                                          .WithColor(Config.Doremi.EmbedColor)
                                          .WithTitle("Avatar Level Up!")
                                          .WithDescription($"{MentionUtils.MentionUser(userId)} has leveled up into level {level + 1}!")
                                          .WithThumbnailUrl(userAvatarUrl);

                        if (idAutorole != 0)
                        {
                            var roleMaster = textChannel.Guild.Roles.FirstOrDefault(x => x.Id == idAutorole);
                            if (roleMaster != null)
                            {
                                await guildUser.AddRoleAsync(roleMaster);

                                eb.AddField("Role unlocked:", roleMaster.Name, true);
                            }

                            //auto remove role
                            if (idAutoroleRemove != 0)
                            {
                                var roleMasterRemove = textChannel.Guild.Roles.FirstOrDefault(x => x.Id == idAutoroleRemove);
                                if (roleMasterRemove != null)
                                {
                                    await guildUser.RemoveRoleAsync(roleMasterRemove);
                                }
                            }
                        }

                        eb.AddField("Next EXP:", $"{(level + 2)*100}", true);

                        //level up notification
                        ulong channelNotificationId = Convert.ToUInt64(guildData[DBM_Guild.Columns.id_channel_notification_chat_level_up]);
                        var   systemChannel         = client.GetChannel(channelNotificationId) as SocketTextChannel; //Gets the channel to send the message in
                        await systemChannel.SendMessageAsync(embed : eb.Build());
                    }

                    //level up
                    query  = $"UPDATE {DBM_Guild_User_Avatar.tableName} ";
                    query += $" SET {DBM_Guild_User_Avatar.Columns.chat_level}={DBM_Guild_User_Avatar.Columns.chat_level}+1, " +
                             $" {DBM_Guild_User_Avatar.Columns.chat_exp}=0 ";
                    query += $" WHERE {DBM_Guild_User_Avatar.Columns.id_guild}=@{DBM_Guild_User_Avatar.Columns.id_guild} AND " +
                             $" {DBM_Guild_User_Avatar.Columns.id_user}=@{DBM_Guild_User_Avatar.Columns.id_user}";
                }
                else
                { //add exp
                    query  = $"UPDATE {DBM_Guild_User_Avatar.tableName} ";
                    query += $" SET {DBM_Guild_User_Avatar.Columns.chat_exp}={DBM_Guild_User_Avatar.Columns.chat_exp}+1 ";
                    query += $" WHERE {DBM_Guild_User_Avatar.Columns.id_guild}=@{DBM_Guild_User_Avatar.Columns.id_guild} AND " +
                             $"{DBM_Guild_User_Avatar.Columns.id_user}=@{DBM_Guild_User_Avatar.Columns.id_user}";
                }

                DBC dbUpdate = new DBC();
                Dictionary <string, object> columns = new Dictionary <string, object>();
                columns[DBM_Guild_User_Avatar.Columns.id_guild] = guildId.ToString();
                columns[DBM_Guild_User_Avatar.Columns.id_user]  = userId.ToString();
                dbUpdate.update(query, columns);
            }
        }
Beispiel #19
0
 public ListBoxItem(DBC.AreaTableEntry entry)
 {
     Entry = entry;
 }
Beispiel #20
0
 public MapSelectionItem(DBC.MapEntry e)
 {
     Map = e;
 }
 public leaderverificationController()
 {
     _ctx = new DBC();
 }
Beispiel #22
0
        public static Dictionary <string, object> getUserData(ulong userId)
        {
            DataTable dt = new DataTable();
            Dictionary <string, object> ret = new Dictionary <string, object>();

            try
            {
                DBC    db    = new DBC();
                string query = $"SELECT * " +
                               $" FROM {DBM_User_Trading_Card_Data.tableName} " +
                               $" WHERE {DBM_User_Trading_Card_Data.Columns.id_user}=@{DBM_User_Trading_Card_Data.Columns.id_user}";

                Dictionary <string, object> colSelect = new Dictionary <string, object>();
                colSelect[DBM_User_Trading_Card_Data.Columns.id_user] = userId.ToString();

                dt = db.selectAll(query, colSelect);

                //create if not exists
                if (dt.Rows.Count <= 0)
                {
                    insertUserData(userId);
                }

                dt = db.selectAll(query, colSelect);

                foreach (DataRow row in dt.Rows)
                {
                    ret[DBM_User_Trading_Card_Data.Columns.id_user]                 = row[DBM_User_Trading_Card_Data.Columns.id_user];
                    ret[DBM_User_Trading_Card_Data.Columns.rank]                    = row[DBM_User_Trading_Card_Data.Columns.rank];
                    ret[DBM_User_Trading_Card_Data.Columns.exp]                     = row[DBM_User_Trading_Card_Data.Columns.exp];
                    ret[DBM_User_Trading_Card_Data.Columns.catch_attempt]           = row[DBM_User_Trading_Card_Data.Columns.catch_attempt];
                    ret[DBM_User_Trading_Card_Data.Columns.catch_token]             = row[DBM_User_Trading_Card_Data.Columns.catch_token];
                    ret[DBM_User_Trading_Card_Data.Columns.card_zone]               = row[DBM_User_Trading_Card_Data.Columns.card_zone];
                    ret[DBM_User_Trading_Card_Data.Columns.last_second_chance_time] = row[DBM_User_Trading_Card_Data.Columns.last_second_chance_time];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_doremi_normal]     = row[DBM_User_Trading_Card_Data.Columns.boost_doremi_normal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_doremi_platinum]   = row[DBM_User_Trading_Card_Data.Columns.boost_doremi_platinum];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_doremi_metal]      = row[DBM_User_Trading_Card_Data.Columns.boost_doremi_metal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_doremi_ojamajos]   = row[DBM_User_Trading_Card_Data.Columns.boost_doremi_ojamajos];

                    ret[DBM_User_Trading_Card_Data.Columns.boost_hazuki_normal]   = row[DBM_User_Trading_Card_Data.Columns.boost_hazuki_normal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_hazuki_platinum] = row[DBM_User_Trading_Card_Data.Columns.boost_hazuki_platinum];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_hazuki_metal]    = row[DBM_User_Trading_Card_Data.Columns.boost_hazuki_metal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_hazuki_ojamajos] = row[DBM_User_Trading_Card_Data.Columns.boost_hazuki_ojamajos];

                    ret[DBM_User_Trading_Card_Data.Columns.boost_aiko_normal]   = row[DBM_User_Trading_Card_Data.Columns.boost_aiko_normal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_aiko_platinum] = row[DBM_User_Trading_Card_Data.Columns.boost_aiko_platinum];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_aiko_metal]    = row[DBM_User_Trading_Card_Data.Columns.boost_aiko_metal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_aiko_ojamajos] = row[DBM_User_Trading_Card_Data.Columns.boost_aiko_ojamajos];

                    ret[DBM_User_Trading_Card_Data.Columns.boost_onpu_normal]   = row[DBM_User_Trading_Card_Data.Columns.boost_onpu_normal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_onpu_platinum] = row[DBM_User_Trading_Card_Data.Columns.boost_onpu_platinum];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_onpu_metal]    = row[DBM_User_Trading_Card_Data.Columns.boost_onpu_metal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_onpu_ojamajos] = row[DBM_User_Trading_Card_Data.Columns.boost_onpu_ojamajos];

                    ret[DBM_User_Trading_Card_Data.Columns.boost_momoko_normal]   = row[DBM_User_Trading_Card_Data.Columns.boost_momoko_normal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_momoko_platinum] = row[DBM_User_Trading_Card_Data.Columns.boost_momoko_platinum];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_momoko_metal]    = row[DBM_User_Trading_Card_Data.Columns.boost_momoko_metal];
                    ret[DBM_User_Trading_Card_Data.Columns.boost_momoko_ojamajos] = row[DBM_User_Trading_Card_Data.Columns.boost_momoko_ojamajos];

                    ret[DBM_User_Trading_Card_Data.Columns.boost_other_special] = row[DBM_User_Trading_Card_Data.Columns.boost_other_special];
                    ret[DBM_User_Trading_Card_Data.Columns.fragment_point]      = row[DBM_User_Trading_Card_Data.Columns.fragment_point];
                    ret[DBM_User_Trading_Card_Data.Columns.created_at]          = row[DBM_User_Trading_Card_Data.Columns.created_at];
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }

            return(ret);
        }
Beispiel #23
0
        private void OnLoad(object obj, EventArgs ea)
        {
            _cascAction         = new BackgroundWorkerEx();
            _cascAction.DoWork += (sender, e) =>
            {
                if (string.IsNullOrEmpty(_localCascPath))
                {
                    CASC.InitializeOnline(_cascAction);
                }
                else
                {
                    try
                    {
                        CASC.Initialize(_localCascPath, _cascAction);
                    }
                    catch (Exception /* ex */)
                    {
                        MessageBox.Show("Path '" + _localCascPath + "/Data' was not found.", "Error",
                                        MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
            };
            _cascAction.ProgressChanged += (sender, e) =>
            {
                if (e.UserState != null && !string.IsNullOrEmpty((string)e.UserState))
                {
                    _feedbackText.Text = (string)e.UserState;
                }
                _backgroundTaskProgress.Style   = ProgressBarStyle.Continuous;
                _backgroundTaskProgress.Maximum = 100;
                _backgroundTaskProgress.Value   = e.ProgressPercentage;
            };
            _cascAction.RunWorkerCompleted += (sender, e) =>
            {
                if (CASC.Initialized)
                {
                    _dbcAction.RunWorkerAsync();
                }
            };

            _dbcAction         = new BackgroundWorkerEx();
            _dbcAction.DoWork += (sender, e) =>
            {
                switch (_dbcIndex)
                {
                case 0:
                    _mapRecords = new DBC <MapRecord>(@"DBFilesClient\Map.dbc", _dbcAction);
                    break;

                case 1:
                    _areaTableRecords = new DBC <AreaTableRecord>(@"DBFilesClient\AreaTable.dbc", _dbcAction);
                    break;

                case 2:
                    // _areaAssignmentRecords = new DB2<AreaAssignmentRecord>(@"DBFilesClient\AreaAssignment.db2");
                    break;
                }
            };
            _dbcAction.ProgressChanged += (sender, e) =>
            {
                _feedbackText.Text              = string.Format(@"Loading {0} ...", (new[] { "maps", "areas" })[_dbcIndex]);
                _backgroundTaskProgress.Style   = ProgressBarStyle.Continuous;
                _backgroundTaskProgress.Maximum = 100;
                _backgroundTaskProgress.Value   = e.ProgressPercentage;

                switch (_dbcIndex)
                {
                case 0:
                    var mapEntry = (MapRecord)e.UserState;
                    _mapListBox.Items.Add(new MapListBoxEntry
                    {
                        Name      = mapEntry.MapNameLang,
                        Directory = mapEntry.Directory,
                        MapID     = mapEntry.ID
                    });
                    break;

                case 1:
                    // Don't populate yet
                    break;
                }
            };
            _dbcAction.RunWorkerCompleted += (sender, e) =>
            {
                _feedbackText.Text = string.Format(@"{0} loaded.", (new[] { "Maps", "Areas" })[_dbcIndex]);
                ++_dbcIndex;
                if (_dbcIndex < 2)
                {
                    _dbcAction.RunWorkerAsync();
                }
            };
        }
Beispiel #24
0
 internal BaseCursor(DBC dbc)
 {
     this.dbc = dbc;
     isOpen   = true;
 }
Beispiel #25
0
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            id = int.Parse(Request.QueryString["class"].ToString());
        }
        catch { }
        try
        {
            p = int.Parse(Request.QueryString["p"].ToString());
        }
        catch { }
        try
        {
            fl = int.Parse(Request.QueryString["fl"].ToString());
        }
        catch { }
        DataTable dt;

        try//左侧菜单
        {
            dt = DBC.getDataTable("select * from zqhl_class where fl=" + fl + " and typeid=1 order by fl asc,en asc,sx asc");
            string lm = "0";
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];
                if (lm != dr["fl"].ToString())
                {
                    leftmenu = "<div class='con-nav'>" + dr["class"].ToString() + "</div>";
                    lm       = dr["fl"].ToString();
                }
                else
                {
                    leftmenu += "<div class='con-nav-s'><a  target='_blank' href='" + ((lm == "4") ? "listzj" : "list") + ".aspx?class=" + dr["id"].ToString() + "&fl=" + fl + "' class='" + ((id.ToString() != dr["id"].ToString()) ? "con-nav-sa" : "con-nav-sactive") + "'>" + dr["class"].ToString() + "</a>   </div>";
                }
            }
            if (lm == "5")
            {
                leftmenu += "<div class='con-nav-s'><a  target='_blank' href='zxsq.aspx?class=0&fl=5' class='con-nav-sa'>在线申请</a>   </div>";
                leftmenu += "<div class='con-nav-s'><a  target='_blank' href='lxwm.aspx?class=0&fl=5' class='con-nav-sa'>联系我们</a>   </div>";
            }
        }
        catch { }
        try
        {
            int one = 0;
            if (id == 0)
            {
                dt = DBC.getDataTable("select * from zqhl_class where fl=" + fl + " order by fl asc,en asc,sx asc");
                if (dt.Rows.Count > 1)
                {
                    classname = dt.Rows[1]["class"].ToString();
                    int.TryParse(dt.Rows[1]["one"].ToString(), out one);
                    int.TryParse(dt.Rows[1]["id"].ToString(), out id);
                }
            }
            else
            {
                dt = DBC.getDataTable("select * from zqhl_class where id=" + id + " order by fl asc,en asc,sx asc");
                if (dt.Rows.Count > 0)
                {
                    classname = dt.Rows[0]["class"].ToString();
                    int.TryParse(dt.Rows[0]["one"].ToString(), out one);
                }
            }
            if (one == 0)//多条
            {
                dt = DBC.getDataTable("select count(*) from zqhl_news where classid=" + id);
                if (dt.Rows.Count > 0)
                {
                    for (int i = 0; i <= (int)(int.Parse(dt.Rows[0][0].ToString()) / ct); i++)
                    {
                        pg += "<a  target='_blank' href='list.aspx?fl=" + fl + "&class=" + id + "&p=" + (i + 1) + "'>" + (i + 1) + "</a>";
                    }
                }
                content  = "<div class='conh-con'><div class='conh-con-c'><ul>";
                content += loadnr(id, 40, 14, p);
                content += " </ul></div><div class='yema'><a  target='_blank' href='#'>&lt;&lt;</a>" + pg + "<a href='#'>&gt;&gt;</a></div></div>";
            }
            else//单独
            {
                dt = DBC.getDataTable("select top 1 * from zqhl_news where classid=" + id);
                if (dt.Rows.Count > 0)
                {
                    DataRow dr = dt.Rows[0];
                    content  = "<div class='conn-con'><div class='conn-con-c1'>";
                    content += dr["content"].ToString();
                    content += "</div></div>";
                }
            }
        }
        catch { }
    }
Beispiel #26
0
 internal HashCursor(DBC dbc, uint pagesize)
     : base(dbc, DatabaseType.HASH, pagesize)
 {
 }
Beispiel #27
0
        private void ShowPassButton_Click(object sender, EventArgs e)
        {
            DBC getpass = new DBC();

            MessageBox.Show(getpass.GetPassUserName(ChoosenUser));
        }
Beispiel #28
0
 internal RecnoCursor(DBC dbc, uint pagesize)
     : base(dbc, DatabaseType.RECNO, pagesize)
 {
 }
Beispiel #29
0
        public dynamic SearchUsersByActiveSubscription(DBC dbc,
                                                       bool?subscriptionStatus,
                                                       List <string> errors,
                                                       List <User> prevMatchedUsers)
        {
            MatchedUsers methods = new MatchedUsers();

            string errorMessage = "No users found for the search parameters provided.";

            try
            {
                if (prevMatchedUsers.Any() && subscriptionStatus == true)
                {
                    if (prevMatchedUsers.Where(x => x.SubscriptionEndDate == null).Any())
                    {
                        return(prevMatchedUsers.Where(x => x.SubscriptionEndDate == null).ToList());
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
                else if (prevMatchedUsers.Any() && subscriptionStatus == false)
                {
                    if (prevMatchedUsers.Where(x => x.SubscriptionEndDate != null).Any())
                    {
                        return(prevMatchedUsers.Where(x => x.SubscriptionEndDate != null).ToList());
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
                else if (subscriptionStatus == true)
                {
                    if (dbc.Users.Where(x => x.SubscriptionEndDate == null).Any())
                    {
                        return(dbc.Users.Where(x => x.SubscriptionEndDate == null).ToList());
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
                else
                {
                    if (dbc.Users.Where(x => x.SubscriptionEndDate != null).Any())
                    {
                        return(dbc.Users.Where(x => x.SubscriptionEndDate != null).ToList());
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
            }
            catch
            {
                errors.Add(errorMessage);

                return(errors.ToList());
            }
        }
Beispiel #30
0
 internal BTreeCursor(DBC dbc, uint pagesize)
     : base(dbc, DatabaseType.BTREE, pagesize)
 {
 }
Beispiel #31
0
 public DoomRepo(DBC dBC, FileManager fm)
 {
     _db = dBC;
     _fm = fm;
 }
Beispiel #32
0
        /// <summary>
        /// Gets a record of type <typeparamref name="T"/> from its corresponding database by its index. This is not a
        /// lookup by the primary key of the row, but rather a direct indexing into the data.
        /// </summary>
        /// <param name="index">The index of the row in the database.</param>
        /// <typeparam name="T">The type of record to retrieve.</typeparam>
        /// <returns>A record of type <typeparamref name="T"/>.</returns>
        public T GetRecordByIndex <T>(int index) where T : DBCRecord, new()
        {
            DBC <T> database = GetDatabase <T>();

            return(database[index]);
        }
Beispiel #33
0
 protected void sc_Command(object sender, CommandEventArgs e)
 {
     DBC.getRowsCount("delete from zqhl_news where id=" + e.CommandArgument);
     BindGrid();
 }
Beispiel #34
0
            private void DoStackPops(List <StackEntry> stack, int index)
            {
                int count = 0;

                TypedInstruction instruction = m_instructions[index];

                switch (instruction.Untyped.OpCode.StackBehaviourPop)
                {
                case StackBehaviour.Pop0:
                    DBC.Fail("DoStackPops shouldn't have been called for Pop0");
                    break;

                case StackBehaviour.Pop1:
                case StackBehaviour.Popi:
                case StackBehaviour.Popref:
                    count = 1;
                    break;

                case StackBehaviour.Pop1_pop1:
                case StackBehaviour.Popi_pop1:
                case StackBehaviour.Popi_popi:
                case StackBehaviour.Popi_popi8:
                case StackBehaviour.Popi_popr4:
                case StackBehaviour.Popi_popr8:
                case StackBehaviour.Popref_pop1:
                case StackBehaviour.Popref_popi:
                    count = 2;
                    break;

                case StackBehaviour.Popi_popi_popi:
                case StackBehaviour.Popref_popi_popi:
                case StackBehaviour.Popref_popi_popi8:
                case StackBehaviour.Popref_popi_popr4:
                case StackBehaviour.Popref_popi_popr8:
                case StackBehaviour.Popref_popi_popref:
                    count = 3;
                    break;

                case StackBehaviour.PopAll:                                                     // leave
                    count = stack.Count;
                    break;

                case StackBehaviour.Varpop:                                                     // call, newobj, ret
                    Call call = instruction as Call;
                    if (call != null)
                    {
                        count = call.Target.Parameters.Count + (call.Target.HasThis ? 1 : 0);
                    }
                    else if (instruction.Untyped.OpCode.Code == Code.Ret)
                    {
                        count = stack.Count;
                    }
                    else
                    {
                        NewObj no = instruction as NewObj;
                        DBC.Assert(no != null, "Varpop opcode should be call, ret, or newobj");

                        count = no.Ctor.Parameters.Count;
                    }
                    break;

                default:
                    DBC.Fail("Bad pop state: {0}", instruction.Untyped.OpCode.StackBehaviourPop);
                    break;
                }

                if (instruction.Untyped.OpCode.Code == Code.Ldelem_Any)
                {
                    count = 2;                                          // cecil has a bug where it says this pops 1 value
                }
                // No assert for zero sized stack because we may not have met the block that gives us a stack.
                DBC.Assert(stack.Count == 0 || count <= stack.Count, "{0} at {1:X2} is trying to pop too many items", instruction.Untyped.OpCode.Code, instruction.Untyped.Offset);
                count = Math.Min(count, stack.Count);
                stack.RemoveRange(stack.Count - count, count);
            }
Beispiel #35
0
        public string SetZone(string zone)
        {
            int continentID;

            if (!zoneToMapId.TryGetValue(zone, out continentID))
            {
                int colon = zone.IndexOf(":");
                if(colon == -1)
                    return null;
                zone = zone.Substring(colon);
                if (!zoneToMapId.TryGetValue(zone, out continentID))
                {
                    return null;
                }
            }

            archive.ExtractFile("DBFilesClient\\Map.dbc", "Map.dbc");
            DBC maps = new DBC();
            DBCFile mf = new DBCFile("Map.dbc", maps);

            for (int i = 0; i < maps.recordCount; i++)
            {
                int mapID = maps.GetInt(i, 0);
               // Console.WriteLine("   ID:" + maps.GetInt(i, 0));
               // Console.WriteLine(" File: " + maps.GetString(i, 1));
               // Console.WriteLine(" Name: " + maps.GetString(i, 4)); // the file!!!

                if (mapID == continentID) // file == continentFile)
                {
                    //  Console.WriteLine(String.Format("{0,4} {1}", mapID, maps.GetString(i, 1)));
                    string file = maps.GetString(i, 1);
                    continentFile = file;

                    wdt = new WDT();

                    wdtf = new WDTFile(archive, continentFile, wdt, wmomanager, modelmanager);
                    if (!wdtf.loaded)
                        wdt = null; // bad
                    else
                    {

                       // Console.WriteLine("  global Objects " + wdt.gwmois.Count + " Models " + wdt.gwmois.Count);
                        //global_triangles.color = new float[3] { 0.8f, 0.8f, 1.0f };
                    }
                    return continentFile;
                }
            }
            if (wdt == null)
            {
                return "Failed to open file files for continent ID" + continentID;
            }
            return null;
        }
Beispiel #36
0
        public MPQTriangleSupplier()
        {
            string[] archiveNames = {
                    "patch.MPQ",
                    "enUS\\patch-enUS.MPQ",
                    "enGB\\patch-enGB.MPQ",
                    "lichking.MPQ",
                    "common-2.MPQ",
                    "common.MPQ",
                    "expansion.MPQ",
                    "enUS\\lichking-locale-enUS.MPQ", "enUS\\locale-enUS.MPQ", "enUS\\expansion-locale-enUS.MPQ",
                    "enGB\\lichking-locale-enGB.MPQ", "enGB\\locale-enGB.MPQ", "enGB\\expansion-locale-enGB.MPQ",
                    "enUS\\base-enUS.MPQ",
                    "enGB\\base-enGB.MPQ",
                    "enUS\\backup-enUS.MPQ",
                    "enGB\\backup-enGB.MPQ"};

            //StormDll.ArchiveSet archive = null;

            archive = new StormDll.ArchiveSet();
            string regGameDir = archive.SetGameDirFromReg();
            //string gameDir = "F:\\World of Warcraft\\Data\\";
            //archive.SetGameDir(gameDir);

            Console.WriteLine("Game dir is " + regGameDir);
            archive.AddArchives(archiveNames);
            modelmanager = new ModelManager(archive, 80);
            wmomanager = new WMOManager(archive, modelmanager, 30);

            archive.ExtractFile("DBFilesClient\\AreaTable.dbc", "PPather\\AreaTable.dbc");
            DBC areas = new DBC();
            DBCFile af = new DBCFile("PPather\\AreaTable.dbc", areas);
            for (int i = 0; i < areas.recordCount; i++)
            {
                int AreaID = (int)areas.GetUint(i, 0);
                int WorldID = (int)areas.GetUint(i, 1);
                int Parent = (int)areas.GetUint(i, 2);
                string Name = areas.GetString(i, 11);

                areaIdToName.Add(AreaID, Name);

                if (WorldID != 0 && WorldID != 1 && WorldID != 530)
                {
                    ////   Console.WriteLine(String.Format("{0,4} {1,3} {2,3} {3}", AreaID, WorldID, Parent, Name));
                }
                //0 	 uint 	 AreaID
                //1 	uint 	Continent (refers to a WorldID)
                //2 	uint 	Region (refers to an AreaID)
            }

            for (int i = 0; i < areas.recordCount; i++)
            {
                int AreaID = (int)areas.GetUint(i, 0);
                int WorldID = (int)areas.GetUint(i, 1);
                int Parent = (int)areas.GetUint(i, 2);
                string Name = areas.GetString(i, 11);

                string TotalName = "";
                //areaIdToName.Add(AreaID, Name);
                //areaIdParent.Add(AreaID, Parent);
                string ParentName = "";
                if (!areaIdToName.TryGetValue(Parent, out ParentName))
                {
                    TotalName = ":" + Name;
                }
                else
                    TotalName = Name + ":" + ParentName;
                try
                {
                    zoneToMapId.Add(TotalName, WorldID);
                    //Console.WriteLine(TotalName + " => " + WorldID);
                }
                catch
                {
                    int id;
                    zoneToMapId.TryGetValue(TotalName, out id);
                    ////  Console.WriteLine("Duplicate: " + TotalName + " " + WorldID +" " + id);
                }
                //0 	 uint 	 AreaID
                //1 	uint 	Continent (refers to a WorldID)
                //2 	uint 	Region (refers to an AreaID)
            }
        }
Beispiel #37
0
 internal SecondaryCursor(DBC dbc) : base(dbc)
 {
 }
Beispiel #38
0
        private void DBC_Tick(object sender, EventArgs e)
        {
            DBC.Stop();
            Operations.GetCustomers();


            List <Users> userlist;


            try
            {
                userlist = Operations.GetCustomers();
                if (userlist.Count > 0)
                {
                    Users mbl;
                    for (int i = 0; i < userlist.Count; i++)
                    {
                        mbl           = userlist[i];
                        Nametext      = mbl.Name;
                        Usernametext  = mbl.User;
                        Phonetext     = mbl.Phone.ToString();
                        Twtext        = mbl.Twuser;
                        Dateregtext   = mbl.Dateofreg.ToShortDateString();
                        dateofendtext = mbl.Dateofend.ToShortDateString();
                        Actives       = mbl.Active;
                        Readys        = mbl.Ready;
                        pricetext     = mbl.Price.ToString();
                        Mcod          = mbl.Mcod.ToString();
                        dateofend     = (DateTime)mbl.Dateofend;
                    }
                }
                else
                {
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); }


            Operations.GetState();


            List <SystemOP> userlist1;


            try
            {
                userlist1 = Operations.GetState();
                if (userlist1.Count > 0)
                {
                    SystemOP mbl;
                    for (int i = 0; i < userlist1.Count; i++)
                    {
                        mbl         = userlist1[i];
                        ReadySystem = mbl.Ready;
                        Prioud_end  = mbl.Prioud_end;
                        Noti        = mbl.Noti.ToString();
                    }
                }
                else
                {
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); }
            if (Actives == 1)
            {
            }
            else
            {
                var exists = System.Diagnostics.Process.GetProcessesByName(System.IO.Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetEntryAssembly().Location)).Count() > 1;
                if (exists == true)
                {
                    MessageBox.Show("RetweetSwap مشغل بالفعل"); Environment.Exit(0);
                }
            }
            if (dateofend >= GetNistTime())
            {
                if (Mcod == Value())
                {
                    Home home = new Home(); home.Show(); this.Close();
                }
                else
                {
                    //Go to form told you u can't work in this pc
                    NotSubPC uc = new NotSubPC();
                    if (!pictureBox1.Contains(uc))
                    {
                        this.Controls.Add(uc);

                        uc.Dock = DockStyle.Fill;
                        uc.BringToFront();
                    }
                    else
                    {
                        uc.BringToFront();
                    }
                }
            }
            else
            {
                if (Mcod == Value())
                {
                    //Go to sub month offer
                    SubsControl uc = new SubsControl();
                    if (!pictureBox1.Contains(uc))
                    {
                        this.Controls.Add(uc);

                        uc.Dock = DockStyle.Fill;
                        uc.BringToFront();
                    }
                    else
                    {
                        uc.BringToFront();
                    }
                }
                else
                {
                    SubsControl uc = new SubsControl();
                    if (!pictureBox1.Contains(uc))
                    {
                        this.Controls.Add(uc);

                        uc.Dock = DockStyle.Fill;
                        uc.BringToFront();
                    }
                    else
                    {
                        uc.BringToFront();
                    }
                }
            }
        }
Beispiel #39
0
                public override Lattice Transform(Lattice lhs, BasicBlock block)
                {
                    DBC.Pre(lhs != null, "lhs is null");
                    DBC.Pre(block != null, "block is null");

                    Lattice result = lhs;

                    if (!lhs.IsTop)
                    {
                        if (block.Length > 0)
                        {
                            for (int i = 0; i < block.Length; ++i)
                            {
                                result = result.Transform(block.First.Index + i);
                            }
                        }
                        else
                        {
                            long?[]           args   = lhs.m_state.Arguments;
                            long?[]           locals = lhs.m_state.Locals;
                            List <StackEntry> stack  = lhs.m_state.Stack;

                            if (block.Length == Tracker.CatchBlockLen || block.Length == Tracker.FinallyBlockLen)
                            {
                                stack = new List <StackEntry>();
                                if (block.Length == Tracker.CatchBlockLen)
                                {
                                    stack.Add(new StackEntry(1, -1));                                                   // catch blocks start with the exception on the stack
                                }
                            }
                            else if (block.Length <= Tracker.FirstNullArgBlockLen && block.Length >= Tracker.LastNullArgBlockLen)
                            {
                                args = new long?[lhs.m_state.Arguments.Length];
                                lhs.m_state.Arguments.CopyTo(args, 0);

                                int nth = Tracker.FirstNullArgBlockLen - block.Length;
                                args[nth] = 0;
                            }
                            else if (block.Length <= Tracker.FirstNonNullArgBlockLen && block.Length >= Tracker.LastNonNullArgBlockLen)
                            {
                                args = new long?[lhs.m_state.Arguments.Length];
                                lhs.m_state.Arguments.CopyTo(args, 0);

                                int nth = Tracker.FirstNonNullArgBlockLen - block.Length;
                                args[nth] = 1;
                            }
                            else if (block.Length <= Tracker.FirstNullLocalBlockLen && block.Length >= Tracker.LastNullLocalBlockLen)
                            {
                                locals = new long?[lhs.m_state.Locals.Length];
                                lhs.m_state.Locals.CopyTo(locals, 0);

                                int nth = Tracker.FirstNullLocalBlockLen - block.Length;
                                locals[nth] = 0;
                            }
                            else if (block.Length <= Tracker.FirstNonNullLocalBlockLen && block.Length >= Tracker.LastNonNullLocalBlockLen)
                            {
                                locals = new long?[lhs.m_state.Locals.Length];
                                lhs.m_state.Locals.CopyTo(locals, 0);

                                int nth = Tracker.FirstNonNullLocalBlockLen - block.Length;
                                locals[nth] = 1;
                            }
                            else if (block.Length != 0)
                            {
                                DBC.Fail("bad block length: {0}", block.Length);
                            }

                            State state = new State(args, locals, stack);
                            return(new Lattice(lhs.m_instructions, state));
                        }
                    }

                    return(result);
                }
Beispiel #40
0
        public string SetZone(string zone)
        {
            int continentID;

            if (!zoneToMapId.TryGetValue(zone, out continentID))
            {
                int colon = zone.IndexOf(":");
                if (colon == -1)
                    return null;
                zone = zone.Substring(colon);
                if (!zoneToMapId.TryGetValue(zone, out continentID))
                {
                    return null;
                }
            }

            archive.ExtractFile("DBFilesClient\\Map.dbc", "PPather\\Map.dbc");
            DBC maps = new DBC();
            DBCFile mf = new DBCFile("PPather\\Map.dbc", maps);

            for (int i = 0; i < maps.recordCount; i++)
            {
                int mapID = maps.GetInt(i, 0);
                // Console.WriteLine("   ID:" + maps.GetInt(i, 0));
                // Console.WriteLine(" File: " + maps.GetString(i, 1));
                // Console.WriteLine(" Name: " + maps.GetString(i, 4)); // the file!!!

                if (mapID == continentID) // file == continentFile)
                {
                    //  Console.WriteLine(String.Format("{0,4} {1}", mapID, maps.GetString(i, 1)));
                    string file = maps.GetString(i, 1);
                    SetContinent(file);
                    return continentFile;
                }
            }
            if (wdt == null)
            {
                return "Failed to open file files for continent ID" + continentID;
            }
            return null;
        }
Beispiel #41
0
        public MPQTriangleSupplier()
        {
            string[] archiveNames =
            {
                "patch-2.MPQ",
                "patch.MPQ",
                "enUS\\patch-enUS-2.MPQ",
                "enUS\\patch-enUS.MPQ",
                "enGB\\patch-enGB-2.MPQ",
                "enGB\\patch-enGB.MPQ",
                "common.MPQ",
                "expansion.MPQ",
                "enUS\\locale-enUS.MPQ", "enUS\\expansion-locale-enUS.MPQ",
                "enGB\\locale-enGB.MPQ", "enGB\\expansion-locale-enGB.MPQ"
            };

            //StormDll.ArchiveSet archive = null;

            archive = new StormDll.ArchiveSet();
            string regGameDir = archive.SetGameDirFromReg();

            //string gameDir = "F:\\World of Warcraft\\Data\\";
            //archive.SetGameDir(gameDir);

            Console.WriteLine("Game dir is " + regGameDir);
            archive.AddArchives(archiveNames);
            modelmanager = new ModelManager(archive, 80);
            wmomanager   = new WMOManager(archive, modelmanager, 30);


            archive.ExtractFile("DBFilesClient\\AreaTable.dbc", "PPather\\AreaTable.dbc");
            DBC     areas = new DBC();
            DBCFile af    = new DBCFile("PPather\\AreaTable.dbc", areas);

            for (int i = 0; i < areas.recordCount; i++)
            {
                int    AreaID  = (int)areas.GetUint(i, 0);
                int    WorldID = (int)areas.GetUint(i, 1);
                int    Parent  = (int)areas.GetUint(i, 2);
                string Name    = areas.GetString(i, 11);

                areaIdToName.Add(AreaID, Name);


                if (WorldID != 0 && WorldID != 1 && WorldID != 530)
                {
                    ////   Console.WriteLine(String.Format("{0,4} {1,3} {2,3} {3}", AreaID, WorldID, Parent, Name));
                }
                //0      uint    AreaID
                //1     uint    Continent (refers to a WorldID)
                //2     uint    Region (refers to an AreaID)
            }

            for (int i = 0; i < areas.recordCount; i++)
            {
                int    AreaID  = (int)areas.GetUint(i, 0);
                int    WorldID = (int)areas.GetUint(i, 1);
                int    Parent  = (int)areas.GetUint(i, 2);
                string Name    = areas.GetString(i, 11);

                string TotalName = "";
                //areaIdToName.Add(AreaID, Name);
                //areaIdParent.Add(AreaID, Parent);
                string ParentName = "";
                if (!areaIdToName.TryGetValue(Parent, out ParentName))
                {
                    TotalName = ":" + Name;
                }
                else
                {
                    TotalName = Name + ":" + ParentName;
                }
                try
                {
                    zoneToMapId.Add(TotalName, WorldID);
                    //Console.WriteLine(TotalName + " => " + WorldID);
                }
                catch
                {
                    int id;
                    zoneToMapId.TryGetValue(TotalName, out id);
                    ////  Console.WriteLine("Duplicate: " + TotalName + " " + WorldID +" " + id);
                }
                //0      uint    AreaID
                //1     uint    Continent (refers to a WorldID)
                //2     uint    Region (refers to an AreaID)
            }
        }
Beispiel #42
0
 //- Returns the state of V_0 before the instruction at index executes.
 public State State(int index)
 {
     DBC.Pre(index >= 0 && index < m_states.Length, "index oor");
     return(m_states[index]);
 }
Beispiel #43
0
 internal JoinCursor(DBC dbc)
 {
     this.dbc = dbc;
     isOpen   = true;
 }