Example #1
0
 public static void DoAllNew(SqlDatabaseClient Db)
 {
     Db.ExecuteNonQuery("INSERT INTO " + Application.FirewindDb + ".items (item_id, base_id) SELECT DISTINCT id, base_item FROM " + Application.PhoenixDb + ".items;");
     Db.ExecuteNonQuery("INSERT INTO " + Application.FirewindDb + ".items_users (item_id, user_id) SELECT DISTINCT id, user_id FROM " + Application.PhoenixDb + ".items WHERE room_id = '0';");
     Db.ExecuteNonQuery("INSERT INTO " + Application.FirewindDb + ".items_extradata (item_id, data) SELECT DISTINCT id, extra_data FROM " + Application.PhoenixDb + ".items WHERE extra_data != '';");
     Db.ExecuteNonQuery("INSERT INTO " + Application.FirewindDb + ".items_rooms (item_id, room_id, x, y, n) SELECT DISTINCT id,room_id, x + ( y / 100 ),z,rot FROM " + Application.PhoenixDb + ".items WHERE room_id != '0' AND wall_pos NOT LIKE ':w=%';");
 }
        public void UpdateHobbies(SqlDatabaseClient MySqlClient, uint LabelId, string mHobby)
        {
            switch (LabelId)
            {
            case 1:
                this.string_5 = mHobby;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Hobby", this.string_5);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET hobby_1 = @Hobby WHERE id = @id LIMIT 1");
                return;

            case 2:
                this.string_6 = mHobby;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Hobby", this.string_6);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET hobby_2 = @Hobby WHERE id = @id LIMIT 1");
                return;

            case 3:
                this.string_7 = mHobby;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Hobby", this.string_7);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET hobby_3 = @Hobby WHERE id = @id LIMIT 1");
                return;
            }
            this.string_5 = mHobby;
            MySqlClient.SetParameter("id", this.uint_0);
            MySqlClient.SetParameter("Hobby", this.string_5);
            MySqlClient.ExecuteNonQuery("UPDATE usuarios SET hobby_1 = @Hobby WHERE id = @id LIMIT 1");
        }
Example #3
0
 public static void Cleanup(SqlDatabaseClient Client)
 {
     Client.ExecuteNonQuery("TRUNCATE TABLE items");
     Client.ExecuteNonQuery("TRUNCATE TABLE items_rooms");
     Client.ExecuteNonQuery("TRUNCATE TABLE items_users");
     Client.ExecuteNonQuery("TRUNCATE TABLE items_extradata");
 }
 public void UpdateGames(SqlDatabaseClient MySqlClient, bool WonRing = false, bool WonCoconut = false, bool WonShuriken = false, bool LoseShuriken = false)
 {
     if (WonRing)
     {
         this.uint_8++;
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("WonRings", this.uint_8);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET rings_ganados = @WonRings WHERE id = @id LIMIT 1");
     }
     else if (WonCoconut)
     {
         this.uint_9++;
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("WonCoconuts", this.uint_9);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET cocos_ganados = @WonCoconuts WHERE id = @id LIMIT 1");
     }
     else if (WonShuriken)
     {
         if (!LoseShuriken)
         {
             this.uint_12 += 5;
         }
         else
         {
             this.uint_12 += 2;
         }
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("NinjaPoints", this.uint_12);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET nivel_ninja = @NinjaPoints WHERE id = @id LIMIT 1");
     }
 }
        public void UpdateVotes(SqlDatabaseClient MySqlClient, uint ColorId, int Vote)
        {
            switch (ColorId)
            {
            case 1:
                this.int_12 += Vote;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("GreenVotes", this.int_12);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET votos_legal = @GreenVotes WHERE id = @id LIMIT 1");
                return;

            case 2:
                this.int_13 += Vote;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("BlueVotes", this.int_13);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET votos_sexy = @BlueVotes WHERE id = @id LIMIT 1");
                return;

            case 3:
                this.int_14 += Vote;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("OrangeVotes", this.int_14);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET votos_simpatico = @OrangeVotes WHERE id = @id LIMIT 1");
                return;
            }
            this.int_12 += Vote;
            MySqlClient.SetParameter("id", this.uint_0);
            MySqlClient.SetParameter("GreenVotes", this.int_12);
            MySqlClient.ExecuteNonQuery("UPDATE usuarios SET votos_legal = @GreenVotes WHERE id = @id LIMIT 1");
        }
Example #6
0
        private static void smethod_6(Session session_0, ClientMessage clientMessage_0)
        {
            uint num = clientMessage_0.ReadUnsignedInteger();

            using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
            {
                client.SetParameter("user1", session_0.CharacterId);
                client.SetParameter("user2", num);
                client.SetParameter("confirmed", 1);
                string query1 = "UPDATE laptop_amigos SET aceptado = '1' WHERE id_usuario = " + session_0.CharacterId + " AND id_amigo = " + num + " LIMIT 1";
                Console.WriteLine(query1);
                if (client.ExecuteNonQuery(query1) > 0)
                {
                    client.ExecuteNonQuery("UPDATE laptop_amigos SET aceptado = '1' WHERE id_usuario = " + num + " AND id_amigo = " + session_0.CharacterId + " LIMIT 1");
                    session_0.LaptopFriendCache.AddToCache(num);
                    Session sessionByCharacterId = SessionManager.GetSessionByCharacterId(num);
                    if (sessionByCharacterId != null)
                    {
                        sessionByCharacterId.LaptopFriendCache.AddToCache(session_0.CharacterId);
                        ForceLaptopUpdateForSession(sessionByCharacterId);
                        sessionByCharacterId.SendData(LaptopNewFriendComposer.Compose(session_0.CharacterInfo));
                    }
                    session_0.SendData(LaptopAcceptFriendComposer.Compose(num));
                }
            }
        }
Example #7
0
        public void AddOrExtend(int Level, double ExtensionTime)
        {
            using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient())
            {
                if (!IsActive)
                {
                    mTimestampCreated = UnixTimestamp.GetCurrent();
                    mTimestampExpire  = UnixTimestamp.GetCurrent();
                }

                mTimestampExpire += ExtensionTime;
                mBaseLevel        = (ClubSubscriptionLevel)Level;

                MySqlClient.SetParameter("userid", mUserId);
                bool CreateNewRecord = (MySqlClient.ExecuteScalar("SELECT null FROM user_subscriptions WHERE user_id = @userid LIMIT 1") == null);

                MySqlClient.SetParameter("userid", mUserId);
                MySqlClient.SetParameter("expirestamp", mTimestampExpire);
                MySqlClient.SetParameter("level", ((int)mBaseLevel).ToString());

                if (CreateNewRecord)
                {
                    MySqlClient.SetParameter("createstamp", UnixTimestamp.GetCurrent());
                    MySqlClient.ExecuteNonQuery("INSERT INTO user_subscriptions (user_id,subscription_level,timestamp_created,timestamp_expire) VALUES (@userid,@level,@createstamp,@expirestamp)");
                }
                else
                {
                    MySqlClient.ExecuteNonQuery("UPDATE user_subscriptions SET subscription_level = @level, timestamp_expire = @expirestamp WHERE user_id = @userid LIMIT 1");
                }
            }
        }
        public void UpdateWishes(SqlDatabaseClient MySqlClient, uint LabelId, string mWish)
        {
            switch (LabelId)
            {
            case 1:
                this.string_8 = mWish;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Wish", this.string_8);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET deseo_1 = @Wish WHERE id = @id LIMIT 1");
                return;

            case 2:
                this.string_9 = mWish;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Wish", this.string_9);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET deseo_2 = @Wish WHERE id = @id LIMIT 1");
                return;

            case 3:
                this.string_10 = mWish;
                MySqlClient.SetParameter("id", this.uint_0);
                MySqlClient.SetParameter("Wish", this.string_10);
                MySqlClient.ExecuteNonQuery("UPDATE usuarios SET deseo_3 = @Wish WHERE id = @id LIMIT 1");
                return;
            }
            this.string_8 = mWish;
            MySqlClient.SetParameter("id", this.uint_0);
            MySqlClient.SetParameter("Wish", this.string_8);
            MySqlClient.ExecuteNonQuery("UPDATE usuarios SET deseo_1 = @Wish WHERE id = @id LIMIT 1");
        }
        private static void smethod_6(Session session_0, ClientMessage clientMessage_0)
        {
            uint num = clientMessage_0.ReadUnsignedInteger();

            using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
            {
                client.SetParameter("user1", session_0.CharacterId);
                client.SetParameter("user2", num);
                client.SetParameter("confirmed", 1);
                if (client.ExecuteNonQuery("UPDATE laptop_amigos SET aceptado = @confirmed WHERE id_usuario = @user1 AND id_amigo = @user2 LIMIT 1") > 0)
                {
                    client.SetParameter("user1", num);
                    client.SetParameter("user2", session_0.CharacterId);
                    client.SetParameter("confirmed", 1);
                    client.ExecuteNonQuery("INSERT INTO laptop_amigos (id_usuario,id_amigo,aceptado) VALUES (@user1,@user2,@confirmed)");
                    session_0.LaptopFriendCache.AddToCache(num);
                    Session sessionByCharacterId = SessionManager.GetSessionByCharacterId(num);
                    if (sessionByCharacterId != null)
                    {
                        sessionByCharacterId.LaptopFriendCache.AddToCache(session_0.CharacterId);
                        ForceLaptopUpdateForSession(sessionByCharacterId);
                        sessionByCharacterId.SendData(LaptopNewFriendComposer.Compose(session_0.CharacterInfo), false);
                    }
                    session_0.SendData(LaptopAcceptFriendComposer.Compose(num), false);
                }
            }
        }
Example #10
0
 public void UpdateAvatar(SqlDatabaseClient MySqlClient, uint Type, string Colors)
 {
     if (string.IsNullOrEmpty(Colors) && !Type.Equals(null))
     {
         this.uint_2 = Type;
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("AvatarType", this.uint_2);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET tipo_avatar = @AvatarType WHERE id = @id LIMIT 1");
     }
     else if (!string.IsNullOrEmpty(Colors) && Type.Equals(null))
     {
         this.string_3 = Colors;
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("AvatarColors", this.string_3);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET colores_avatar = @AvatarColors WHERE id = @id LIMIT 1");
     }
     else if (!string.IsNullOrEmpty(Colors) && !Type.Equals(null))
     {
         this.uint_2   = Type;
         this.string_3 = Colors;
         MySqlClient.SetParameter("id", this.uint_0);
         MySqlClient.SetParameter("AvatarType", this.uint_2);
         MySqlClient.SetParameter("AvatarColors", this.string_3);
         MySqlClient.ExecuteNonQuery("UPDATE usuarios SET colores_avatar = @AvatarColors, tipo_avatar = @AvatarType WHERE id = @id LIMIT 1");
     }
 }
Example #11
0
 private static void PerformDatabaseCleanup(SqlDatabaseClient MySqlClient)
 {
     MySqlClient.ExecuteNonQuery("UPDATE rooms SET current_users = 0");
     MySqlClient.SetParameter("timestamp", UnixTimestamp.GetCurrent());
     MySqlClient.ExecuteNonQuery("UPDATE room_visits SET timestamp_left = @timestamp WHERE timestamp_left = 0");
     MySqlClient.ExecuteNonQuery("UPDATE characters SET auth_ticket = ''");
 }
Example #12
0
        private static void OnFriendRequestAccept(Session Session, ClientMessage Message)
        {
            int Amount = Message.PopWiredInt32();

            // Precaution: limit queries to 50.
            if (Amount > 50)
            {
                Amount = 50;
            }

            List <Session> SessionsToUpdate = new List <Session>()
            {
                Session
            };

            for (int i = 0; i < Amount; i++)
            {
                uint RequestId = Message.PopWiredUInt32();

                using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient())
                {
                    MySqlClient.SetParameter("user1", Session.CharacterId);
                    MySqlClient.SetParameter("user2", RequestId);
                    MySqlClient.SetParameter("confirmed", 1);
                    int Affected = MySqlClient.ExecuteNonQuery("UPDATE messenger_friendships SET confirmed = @confirmed WHERE user_1_id = @user1 AND user_2_id = @user2 LIMIT 1");

                    if (Affected > 0)
                    {
                        MySqlClient.SetParameter("user1", RequestId);
                        MySqlClient.SetParameter("user2", Session.CharacterId);
                        MySqlClient.SetParameter("confirmed", 1);
                        MySqlClient.ExecuteNonQuery("INSERT INTO messenger_friendships (user_1_id,user_2_id,confirmed) VALUES (@user1,@user2,@confirmed)");

                        Session.MessengerFriendCache.AddToCache(RequestId);

                        Session TargetSession = SessionManager.GetSessionByCharacterId(RequestId);

                        if (TargetSession != null)
                        {
                            TargetSession.MessengerFriendCache.AddToCache(Session.CharacterId);
                            SessionsToUpdate.Add(TargetSession);
                        }
                    }
                }
            }

            for (int i = 0; i < 2; i++)
            {
                foreach (Session SessionToUpdate in SessionsToUpdate)
                {
                    ForceMessengerUpdateForSession(SessionToUpdate);
                }
            }
        }
Example #13
0
        public static void DeleteRoom(SqlDatabaseClient MySqlClient, uint RoomId)
        {
            MySqlClient.SetParameter("id", RoomId);
            MySqlClient.ExecuteNonQuery("DELETE FROM rooms WHERE id = @id LIMIT 1");

            MySqlClient.SetParameter("id", RoomId);
            MySqlClient.ExecuteNonQuery("DELETE FROM navigator_frontpage WHERE room_id = @id");

            RoomInfoLoader.RemoveFromCache(RoomId);
            Navigator.ReloadOfficialItems(MySqlClient);
        }
Example #14
0
        public static void DoUserWallItems(SqlDatabaseClient Phoenix, SqlDatabaseClient Butterfly)
        {
            DataTable items = Phoenix.ExecuteQueryTable("SELECT * FROM items WHERE room_id = 0 AND wall_pos LIKE ':w=%'");

            foreach (DataRow item in items.Rows)
            {
                uint Id       = (uint)item["id"];
                int  UserId   = (int)item["user_id"];
                int  BaseItem = (int)item["base_item"];

                Butterfly.ExecuteNonQuery("REPLACE INTO items_users(item_id, user_id) VALUES ('" + Id + "', '" + UserId + "')");
                Butterfly.ExecuteNonQuery("REPLACE INTO items(item_id, base_id) VALUES ('" + Id + "', '" + BaseItem + "')");
                items.Rows.Remove(item);
            }
        }
Example #15
0
 public void UpdateMotto(SqlDatabaseClient MySqlClient, string Motto)
 {
     this.string_2 = Motto;
     MySqlClient.SetParameter("id", this.uint_0);
     MySqlClient.SetParameter("Motto", Motto);
     MySqlClient.ExecuteNonQuery("UPDATE usuarios SET bocadillo = @Motto WHERE id = @id LIMIT 1");
 }
Example #16
0
        private static void smethod_2(Session session_0, ClientMessage clientMessage_0)
        {
            string str  = clientMessage_0.ReadString();
            string s    = clientMessage_0.ReadString();
            uint   num  = clientMessage_0.ReadUnsignedInteger();
            string str3 = clientMessage_0.ReadString();
            int    num2 = clientMessage_0.ReadInteger();
            string str4 = clientMessage_0.ReadString();
            string str5 = string.Empty;
            string str6 = string.Empty;
            SHA1   sha  = SHA1.Create();

            if ((((str.Length >= 1) && (s.Length >= 4)) && ((num2 >= 0) || (num2 <= 0x41))) && (str4.Length >= 4))
            {
                str5 = Convert.ToBase64String(sha.ComputeHash(Constants.DefaultEncoding.GetBytes(s)));
                using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
                {
                    client.SetParameter("Username", str);
                    client.SetParameter("Password", str5);
                    client.SetParameter("Avatar", num);
                    client.SetParameter("Colors", str3);
                    client.SetParameter("Age", num2);
                    client.SetParameter("Email", str4);
                    client.SetParameter("CurrentTimestamp", UnixTimestamp.GetCurrent());
                    client.SetParameter("RemoteAddress", session_0.RemoteAddress);
                    client.SetParameter("Null", 0);
                    str6 = client.ExecuteScalar("INSERT INTO usuarios (`usuario`, `password`, `email`, `edad`, `tiempo_registrado`, `ip_registro`,  `ip_actual`, `ultimo_login`, `tipo_avatar`, `colores_avatar`, `timestamp_monedas`) VALUES (@Username, @Password, @Email, @Age, @Null, @RemoteAddress, @RemoteAddress, @CurrentTimestamp, @Avatar, @Colors, @CurrentTimestamp); SELECT LAST_INSERT_ID();").ToString();
                    client.SetParameter("Id", (str6 == string.Empty) ? ((object)0) : ((object)uint.Parse(str6)));
                    client.ExecuteNonQuery("INSERT INTO rankings (`usuario`) VALUES (@Id)");
                }
                session_0.TryAuthenticate(str, str5, session_0.RemoteAddress, true);
            }
        }
 /// <summary>
 /// Removes the SSO (Single Sign On) ticket from the database after a successful login attempt.
 /// </summary>
 /// <param name="UserId">The character id to remove the ticket from.</param>
 private static void RemoveTicket(SqlDatabaseClient MySqlClient, uint UserId, string AddressToLog)
 {
     MySqlClient.SetParameter("id", UserId);
     MySqlClient.SetParameter("lastip", AddressToLog);
     MySqlClient.SetParameter("lastonline", UnixTimestamp.GetCurrent());
     MySqlClient.ExecuteNonQuery("UPDATE characters SET auth_ticket = '', last_ip = @lastip, timestamp_lastvisit = @lastonline WHERE id = @id LIMIT 1");
 }
Example #18
0
        private static void smethod_9(Session session_0, ClientMessage clientMessage_0)
        {
            uint   num = clientMessage_0.ReadUnsignedInteger();
            string str = InputFilter.FilterString(clientMessage_0.ReadString(), false).Trim();

            if ((((num > 0) && (str.Length >= 1)) && (num != session_0.CharacterId)) && session_0.LaptopFriendCache.Friends.Contains(num))
            {
                Session sessionByCharacterId = SessionManager.GetSessionByCharacterId(num);
                if (sessionByCharacterId == null)
                {
                    using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
                    {
                        client.SetParameter("sender", session_0.CharacterId);
                        client.SetParameter("receptor", num);
                        client.SetParameter("text", str);
                        client.SetParameter("time", UnixTimestamp.GetCurrent());
                        client.SetParameter("color", session_0.CharacterInfo.Staff);
                        client.ExecuteNonQuery("INSERT INTO laptop_mensajes (emisor, receptor, contenido, timestamp, color, leido) VALUES (@sender, @receptor, @text, @time, @color, 0)");
                    }
                }
                else
                {
                    sessionByCharacterId.SendData(LaptopMessageComposer.Compose(session_0.CharacterId, str, session_0.CharacterInfo.Staff), false);
                }
            }
        }
Example #19
0
        public void Unmute(SqlDatabaseClient MySqlClient)
        {
            mModerationMutedUntil = 0;

            MySqlClient.SetParameter("id", mId);
            MySqlClient.ExecuteNonQuery("UPDATE characters SET moderation_muted_until_timestamp = 0 WHERE id = @id LIMIT 1");
        }
Example #20
0
        public WiredData(uint ItemId, int Type)
        {
            mItemId = ItemId;
            mType   = Type;

            using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient())
            {
                MySqlClient.SetParameter("id", ItemId);
                DataRow Row = MySqlClient.ExecuteQueryRow("SELECT * FROM wired_items WHERE item_id = @id LIMIT 1");

                if (Row != null)
                {
                    GenerateWiredFromRow(Row);
                }
                else
                {
                    MySqlClient.SetParameter("id", ItemId);
                    MySqlClient.ExecuteNonQuery("INSERT INTO wired_items (item_id, data1, data2, data3, data4, data5, time) VALUES (@id, '','0','0', '0','', '0')");
                    mData1 = "";
                    mData2 = 0;
                    mData3 = 0;
                    mData4 = 0;
                    mData5 = "";
                    mTime  = 0;
                }
            }
        }
Example #21
0
        public void ApplyDecoration(SqlDatabaseClient MySqlClient, string Key, string Value)
        {
            lock (mSyncRoot)
            {
                if (!mDecorations.ContainsKey(Key))
                {
                    mDecorations.Add(Key, Value);
                }
                else
                {
                    mDecorations[Key] = Value;
                }

                StringBuilder DecorationString = new StringBuilder();

                foreach (KeyValuePair <string, string> Decoration in mDecorations)
                {
                    if (DecorationString.Length > 0)
                    {
                        DecorationString.Append('|');
                    }

                    DecorationString.Append(Decoration.Key);
                    DecorationString.Append('=');
                    DecorationString.Append(Decoration.Value);
                }

                MySqlClient.SetParameter("id", mId);
                MySqlClient.SetParameter("decorations", DecorationString);
                MySqlClient.ExecuteNonQuery("UPDATE rooms SET decorations = @decorations WHERE id = @id LIMIT 1");
            }
        }
Example #22
0
        private static void OnFriendRequestDecline(Session Session, ClientMessage Message)
        {
            bool HandleAll = Message.PopWiredBoolean();
            int  Amount    = Message.PopWiredInt32();

            using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient())
            {
                if (HandleAll)
                {
                    MySqlClient.SetParameter("userid", Session.CharacterId);
                    MySqlClient.SetParameter("confirmed", 0);
                    MySqlClient.SetParameter("amount", Amount);
                    MySqlClient.ExecuteNonQuery("DELETE FROM messenger_friendships WHERE user_1_id = @userid AND confirmed = @confirmed");
                }
                else
                {
                    // Precaution: limit queries to 50
                    if (Amount > 50)
                    {
                        Amount = 50;
                    }

                    for (int i = 0; i < Amount; i++)
                    {
                        uint RequestId = Message.PopWiredUInt32();
                        DestroyFriendship(MySqlClient, Session.CharacterId, RequestId);
                    }
                }
            }
        }
Example #23
0
        private static void smethod_23(Session session_0, ClientMessage clientMessage_0)
        {
            string str = clientMessage_0.ReadString();
            uint   num = clientMessage_0.ReadUnsignedInteger();

            using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
            {
                client.SetParameter("name", str);
                if (client.ExecuteQueryRow("SELECT id FROM islas WHERE nombre = @name AND id_parent = '0' LIMIT 1") != null)
                {
                    session_0.SendData(CreateIslandComposer.TakenNameComposer(), false);
                }
                else
                {
                    client.SetParameter("name", str);
                    client.SetParameter("model", num);
                    client.SetParameter("userid", session_0.CharacterId);
                    client.ExecuteNonQuery("INSERT INTO islas (nombre,modelo_area,id_usuario) VALUES (@name, @model, @userid)");
                    client.SetParameter("name", str);
                    DataRow row2 = client.ExecuteQueryRow("SELECT id FROM islas WHERE nombre = @name AND id_parent = '0' LIMIT 1");
                    if (row2 != null)
                    {
                        session_0.SendData(CreateIslandComposer.Compose((uint)row2["id"]), false);
                    }
                }
            }
        }
Example #24
0
        public static int InsertNewAdministratorToDBFromExistingUser(LocalUser user, byte[] password)
        {
            int count = 0;

            try
            {
                using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
                {
                    string sql = "INSERT INTO Administrator (member_id, password_hash) VALUES(@member_id, @password_hash);";
                    client.SetParameter("@member_id", user.UserID);
                    client.SetParameter("@password_hash", password);
                    count = client.ExecuteNonQuery(sql);
                }
            }
            catch (DbException e)
            {
                if (e.Message.Contains("Administrator_FKIndex1"))
                {
                    return(-4);
                }
                else if (e.Message.Contains("unique_member_administrator_ck"))
                {
                    return(-3);
                }
                else
                {
                    Logger.WriteLine(e.ToString(), Logger.LOG_LEVEL.WARN);
                }
            }

            return(count);
        }
Example #25
0
 public void UpdateSilverCreditsBalance(SqlDatabaseClient MySqlClient, int Amount)
 {
     this.int_1 += Amount;
     MySqlClient.SetParameter("id", this.uint_0);
     MySqlClient.SetParameter("credits", this.int_1);
     MySqlClient.ExecuteNonQuery("UPDATE usuarios SET creditos_plata = @credits WHERE id = @id LIMIT 1");
 }
Example #26
0
        public void Stop(SqlDatabaseClient MySqlClient)
        {
            if (Stopped)
            {
                return;
            }

            mSocket.Close();
            mSocket = null;

            if (Authenticated)
            {
                mCharacterInfo.SynchronizeStatistics(MySqlClient);

                if (CurrentRoomId > 0)
                {
                    RoomManager.RemoveUserFromRoom(this, false);
                }

                MessengerHandler.MarkUpdateNeeded(this, 0, true);
                MySqlClient.ExecuteNonQuery("UPDATE characters SET online = '0' WHERE id = " + CharacterId + " LIMIT 1");
            }

            Output.WriteLine("Stopped and disconnected client " + Id + ".", OutputLevel.DebugInformation);

            mStoppedTimestamp = UnixTimestamp.GetCurrent();
        }
Example #27
0
 public static void DeleteIsland(SqlDatabaseClient MySqlClient, uint IslandId)
 {
     MySqlClient.SetParameter("id", IslandId);
     MySqlClient.ExecuteNonQuery("DELETE FROM escenarios WHERE id = @id LIMIT 1");
     SpaceInfoLoader.RemoveFromCache(IslandId);
     Navigator.ReloadOfficialItems(MySqlClient);
 }
Example #28
0
        public void RemoveBadge(string BadgeCode)
        {
            lock (mSyncRoot)
            {
                foreach (Badge badge in mStaticBadges)
                {
                    if (badge.Code == BadgeCode)
                    {
                        mIndexCache.Remove(badge.Code);
                        mStaticBadges.Remove(badge);

                        foreach (KeyValuePair <int, Badge> EquipData in mEquippedBadges)
                        {
                            if (EquipData.Value.Code == BadgeCode)
                            {
                                mEquippedBadges.Remove(EquipData.Key);
                                break;
                            }
                        }

                        using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient())
                        {
                            MySqlClient.SetParameter("userid", mUserId);
                            MySqlClient.SetParameter("badgecode", BadgeCode);
                            MySqlClient.ExecuteNonQuery("DELETE FROM user_badges WHERE user_id = @userid AND badge_code = @badgecode");
                        }

                        break;
                    }
                }
            }
        }
Example #29
0
 private static void smethod_0(SqlDatabaseClient sqlDatabaseClient_0, uint uint_0, string string_0)
 {
     sqlDatabaseClient_0.SetParameter("id", uint_0);
     sqlDatabaseClient_0.SetParameter("lastip", string_0);
     sqlDatabaseClient_0.SetParameter("lastonline", UnixTimestamp.GetCurrent());
     sqlDatabaseClient_0.ExecuteNonQuery("UPDATE usuarios SET ip_actual = @lastip, ultimo_login = @lastonline WHERE id = @id LIMIT 1");
 }
Example #30
0
        public static int InsertNewLog(string info)
        {
            int  count  = 0;
            uint userId = LocalUser.GetFirstAdministratorAccount();

            if (userId > 0)
            {
                try
                {
                    using (SqlDatabaseClient client = SqlDatabaseManager.GetClient())
                    {
                        string sql = "INSERT INTO Entry (member_id, info) VALUES(@member_id, @info);";
                        client.SetParameter("@member_id", userId);
                        client.SetParameter("@info", info);
                        count = client.ExecuteNonQuery(sql);
                    }
                }
                catch (DbException e)
                {
                    if (e.Message.Contains("Entry_FKIndex1"))
                    {
                        return(-1);
                    }
                    else
                    {
                        Logger.WriteLine(e.ToString(), Logger.LOG_LEVEL.WARN);
                    }
                }
            }

            return(count);
        }