Esempio n. 1
0
 public void LeaveSeat(virtualUser usr)
 {
     if (seatOwner.UserID == usr.UserID)
     {
         seatOwner = null;
     }
 }
Esempio n. 2
0
 public static void ChangeName(virtualUser User, string oldName, string newName)
 {
     string[] GetCheck = DB.runReadRow("SELECT * FROM clans WHERE clanname='" + newName + "'");
     if (GetCheck.Length == 0) // Prevent double clan name!
     {
         if (User.Cash - 5000 >= 0)
         {
             if (User.ClanRank == 5) // Check if user is master
             {
                 User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> You've changed clan name for 5,000 cash!", User.SessionID, User.Nickname));
                 foreach (virtualUser ClanUser in getClanUsers(User.ClanID))
                 {
                     ClanUser.ClanName = newName;
                     ClanUser.send(new PACKET_CHAT("ClanSystem", PACKET_CHAT.ChatType.Clan, "ClanSystem >> Clan name was changed from: " + oldName + " to: " + newName, ClanUser.ClanID, ClanUser.Nickname));
                 }
                 User.Cash -= 5000;
                 DB.runQuery("UPDATE users SET cash=cash-2500 WHERE id='" + User.UserID + "'");
                 DB.runQuery("UPDATE clans SET clanname='" + newName + "' WHERE id='" + User.ClanID + "'");
             }
             else
             {
                 User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> You cannot change the clan name because you're not the master!", User.SessionID, User.Nickname));
             }
         }
         else
         {
             User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> Not enough cash!", User.SessionID, User.Nickname));
         }
     }
     else
     {
         User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> This clan name is already in use!", User.SessionID, User.Nickname));
     }
 }
Esempio n. 3
0
        private static void connectionRequest(IAsyncResult iAr)
        {
            try
            {
                int connectionID = 0;
                for (int i = 1; i < _maxConnections; i++)
                {
                    if (_activeConnections.Contains(i) == false)
                    {
                        connectionID = i;
                        break;
                    }
                }

                if (connectionID > 0)
                {
                    Socket connectionSocket = ((Socket)iAr.AsyncState).EndAccept(iAr);
                    Logging.WriteLine("[ConnMgr] Accepted connection [" + connectionID + " IP: " + connectionSocket.RemoteEndPoint.ToString().Split(':')[0] + "]");
                    _activeConnections.Add(connectionID);
                    _acceptedConnections++;

                    virtualUser newUser = new virtualUser(connectionID, connectionSocket);
                }
            }
            catch { }
            socketHandler.BeginAccept(new AsyncCallback(connectionRequest), socketHandler);
        }
Esempio n. 4
0
 public override void Handle(virtualUser User)
 {
     try
     {
         int         Type        = Convert.ToInt32(getNextBlock());
         virtualRoom currentRoom = User.Room;
         if (currentRoom.getSide(User) == 1 && User.Weapon == 118) // NIU
         {
             if (currentRoom.bombPlanted == false)
             {
                 User.disconnect();
             }
             currentRoom.bombPlanted = false;
             currentRoom.bombDefused = true;
             currentRoom.prepareRound(1);
             currentRoom.cNIUExplosivePoints += 12;
         }
         else if (currentRoom.getSide(User) == 0 && User.Weapon == 91) // Derb
         {
             currentRoom.bombPlanted           = true;
             currentRoom.cDerbExplosivePoints += 6;
             currentRoom.RoundTimeLeft         = 44000;
         }
         currentRoom.send(new PACKET_BOMB(getAllBlocks()));
     }
     catch (Exception ex)
     {
         Log.AppendError("currentRoom Bomb error: " + ex.Message);
     }
 }
Esempio n. 5
0
        public override void Handle(virtualUser User)
        {
            try
            {
                if (User.Room != null)
                {
                    if (User.Room.PlayerCount < User.Room.MaxPlayers)
                    {
                        string Username = getNextBlock();
                        string Message  = getNextBlock();

                        if (Username == "NULL") // Send Random User
                        {
                            System.Collections.ArrayList _ValidPlayers = new System.Collections.ArrayList();
                            foreach (virtualUser _User in Managers.UserManager.getAllUsers())
                            {
                                if (_User != null && _User.Room == null && _User.Channel == User.Channel)
                                {
                                    _ValidPlayers.Add(_User);
                                }
                            }

                            if (_ValidPlayers.Count > 0)
                            {
                                int rPlayer = new System.Random().Next(0, _ValidPlayers.Count - 1);

                                virtualUser _Target = (virtualUser)_ValidPlayers[rPlayer];
                                if (_Target != null)
                                {
                                    _Target.send(new Packets.PACKET_ROOM_INVITE(User, Message));
                                    User.send(new Packets.PACKET_ROOM_INVITE(Packets.PACKET_ROOM_INVITE.ErrorCodes.Invited));
                                }
                            }
                        }
                        else
                        { // Match User
                            foreach (virtualUser _User in Managers.UserManager.getAllUsers())
                            {
                                if (_User.Nickname.ToLower() == Username.ToLower())
                                {
                                    if (_User.Room == null)
                                    {
                                        _User.send(new Packets.PACKET_ROOM_INVITE(User, Message));
                                        User.send(new Packets.PACKET_ROOM_INVITE(User, Message));
                                        return;
                                    }
                                    else
                                    {
                                        User.send(new Packets.PACKET_ROOM_INVITE(Packets.PACKET_ROOM_INVITE.ErrorCodes.IsPlaying));
                                        return;
                                    }
                                }
                            }
                            User.send(new Packets.PACKET_ROOM_INVITE(Packets.PACKET_ROOM_INVITE.ErrorCodes.GenericError));
                        }
                    }
                }
            }
            catch { }
        }
Esempio n. 6
0
        public static void KickClan(virtualUser User, string Nickname)
        {
            // Kick a member from the clan
            bool UserFound = false;

            if (User.ClanID != 1 && User.ClanRank == 5 && Nickname.ToLower() != User.Nickname.ToLower())
            {
                string[] selectedUser = DB.runReadRow("SELECT id, clanrank FROM users WHERE nickname='" + Nickname.ToLower() + "' AND clanid='" + User.ClanID + "'");
                if (selectedUser.Length > 0)
                {
                    if (selectedUser[1] == "5")
                    {
                        return;
                    }
                    DB.runQuery("UPDATE users SET clanid='-1', clanrank='1' WHERE id='" + selectedUser[0] + "'");
                    foreach (virtualUser Players in getClanUsers(User.ClanID))
                    {
                        Players.send(new PACKET_CHAT("ClanSystem", PACKET_CHAT.ChatType.Clan, "ClanSystem >> " + Nickname + " got kicked from the clan by" + User.Nickname + " :/!", User.ClanID, "NULL"));
                    }
                    return;
                }
                else
                {
                    UserFound = false;
                }
                if (UserFound == false)
                {
                    User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> The user " + Nickname + " is not in your clan or doesn't exist!", User.SessionID, User.Nickname));
                }
            }
        }
Esempio n. 7
0
 public PACKET_INIT_PLAYER(virtualUser User)
 {
     try
     {
         virtualRoom Room = User.Room;
         if (Room == null)
         {
             return;
         }
         this.newPacket(30017);
         this.addBlock(Room.Players.Count);
         foreach (virtualUser RoomUser in Room.Players)
         {
             this.addBlock(RoomUser.RoomSlot);
             this.addBlock(RoomUser.Health);
             this.addBlock(-1);
             this.addBlock(-1);
             this.addBlock(-1);
         }
         this.addBlock(Room.Vehicles.Count);
         foreach (Vehicle virtualVehicle in Room.Vehicles.Values)
         {
             this.addBlock(virtualVehicle.ID);
             this.addBlock(virtualVehicle.Health);
             this.addBlock(virtualVehicle.MaxHealth);
             this.addBlock("NULL");
         }
     }
     catch (Exception ex)
     {
         Log.AppendError("Error at init player: " + ex.Message);
     }
 }
Esempio n. 8
0
 public static void RemoveClan(virtualUser User)
 {
     if (User.ClanID != -1)      // If user has a clan
     {
         if (User.ClanRank == 2) // If user is the master
         {
             /* Execute query for the database */
             DB.runQuery("DELETE FROM clans WHERE clanname='" + User.ClanName + "'");
             DB.runQuery("DELETE FROM clans_clanwars WHERE clanname1='" + User.ClanName + "' OR clanname2='" + User.ClanName + "'");
             DB.runQuery("UPDATE users SET clanid='-1', clanrank='-1' WHERE clanid='" + User.ClanID + "'");
             foreach (virtualUser Players in UserManager.getAllUsers())
             {
                 if (Players.ClanID == User.ClanID)
                 {
                     // If user is in the same clan of master updates live!
                     Players.send(new PACKET_CHAT("ClanSystem", PACKET_CHAT.ChatType.Clan, "ClanSystem >> " + User.Nickname + " disbanded the clan :(", Players.ClanID, "NULL"));
                     Players.ClanID     = -1;
                     Players.ClanRank   = -1;
                     Players.ClanIconID = -1;
                 }
             }
             // Remove the clan
             Clans.Remove(getClan(User.ClanID));
             User.send(new PACKET_CLAN());
             return;
         }
         else // If user has clan but isn't the master
         {
             User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> Cannot delete the clan because you're not the master!", User.SessionID, User.Nickname));
         }
     }
 }
Esempio n. 9
0
 public static void UpgradeClan(virtualUser User)
 {
     if (User.ClanID == -1)
     {
         User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> You doesn't own a clan!", User.SessionID, User.Nickname));
     }
     else if (User.ClanRank != 2)
     {
         User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> You're not the owner of the clan!", User.SessionID, User.Nickname));
     }
     else if (User.Cash - 10000 < 0)
     {
         User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> Not enough money!", User.SessionID, User.Nickname));
     }
     else if (getClan(User.ClanID).maxUsers >= 100)
     {
         User.send(new PACKET_CHAT("SYSTEM", PACKET_CHAT.ChatType.Whisper, "SYSTEM >> Your clan cannot be extended more!!", User.SessionID, User.Nickname));
     }
     else
     {
         int MaxUsers = getClan(User.ClanID).maxUsers;
         getClan(User.ClanID).maxUsers += 20;
         int NewMaxUsers = getClan(User.ClanID).maxUsers;
         foreach (virtualUser ClanUser in getClanUsers(User.ClanID))
         {
             ClanUser.send(new PACKET_CHAT("ClanSystem", PACKET_CHAT.ChatType.Clan, "ClanSystem >> " + User.Nickname + " has upgraded clan slots from: " + MaxUsers + " to: " + NewMaxUsers + ":)!", User.ClanID, "NULL"));
         }
         DB.runQuery("UPDATE clans SET maxusers=maxusers+20 WHERE id='" + User.ClanID + "'");
     }
 }
Esempio n. 10
0
 /// <summary>
 /// Ran on a thread with an interval of 2 minutes. Drops 'dead' virtual events (events where the hoster has left the virtual room where the event was hosted) from the manager.
 /// </summary>
 private static void dropDeadEvents()
 {
     while (true)
     {
         for (int i = 0; i < categoryAmount; i++)
         {
             foreach (virtualEvent Event in ((Hashtable)Events[i].Clone()).Values)
             {
                 if (userManager.containsUser(Event.userID) == false)
                 {
                     using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
                     {
                         dbClient.runQuery("DELETE FROM events WHERE roomid = '" + Event.roomID + "'");
                     }
                     Events[i].Remove(Event.roomID);
                 }
                 else
                 {
                     virtualUser Hoster = userManager.getUser(Event.userID);
                     if (Hoster._roomID != Event.roomID)
                     {
                         using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
                         {
                             dbClient.runQuery("DELETE FROM events WHERE roomid = '" + Event.roomID + "'");
                         }
                         Events[i].Remove(Event.roomID);
                         Hoster._hostsEvent = false;
                     }
                 }
             }
         }
         Thread.Sleep(deadEventDropInterval); // Sleep the configured amount of time before repeating
         Out.WriteTrace("Drop dead event loop");
     }
 }
Esempio n. 11
0
        /// <summary>
        /// Adds a virtualUser class together with the userID to the userManager. Login ticket will be nulled and previous logged in instances of this user will be dropped.
        /// </summary>
        /// <param name="userID">The ID of the user to add.</param>
        /// <param name="User">The virtualUser class of this user.</param>
        public static void addUser(int userID, virtualUser User)
        {
            if (_Users.ContainsKey(userID))
            {
                virtualUser oldUser = ((virtualUser)_Users[userID]);
                oldUser.Disconnect();
                if (_Users.ContainsKey(userID))
                {
                    _Users.Remove(userID);
                }
            }

            if (User.connectionRemoteIP == DB.runRead("SELECT ipaddress_last FROM users WHERE name = '" + User._Username + "'"))
            {
                _Users.Add(userID, User);
                DB.runQuery("UPDATE users SET ticket_sso = NULL WHERE id = '" + userID + "' LIMIT 1");
                Out.WriteLine("User " + userID + " logged in. [" + User._Username + "]", Out.logFlags.BelowStandardAction);
            }
            else
            {
                User.Disconnect(1000);
                User.sendData("BK" + "Invalid Session Ticket, please login again!");
            }

            if (_Users.Count > _peakUserCount)
            {
                _peakUserCount = _Users.Count;
            }
        }
Esempio n. 12
0
 /// <summary>
 /// Ran on a thread with an interval of 2 minutes. Drops 'dead' virtual events (events where the hoster has left the virtual room where the event was hosted) from the manager.
 /// </summary>
 private static void dropDeadEvents()
 {
     while (true)
     {
         for (int i = 0; i < categoryAmount; i++)
         {
             foreach (virtualEvent Event in ((Hashtable)Events[i].Clone()).Values)
             {
                 if (userManager.containsUser(Event.userID) == false)
                 {
                     Events[i].Remove(Event.roomID);
                 }
                 else
                 {
                     virtualUser Hoster = userManager.getUser(Event.userID);
                     if (Hoster._roomID != Event.roomID)
                     {
                         Events[i].Remove(Event.roomID);
                         Hoster._hostsEvent = false;
                     }
                 }
             }
         }
         Thread.Sleep(deadEventDropInterval); // Sleep the configured amount of time before repeating
         Out.WriteTrace("Drop dead event loop");
     }
 }
Esempio n. 13
0
 public override void Handle(virtualUser User)
 {
     try
     {
         //if (User.Room.RoomType == 1 && User.Room.RoomStatus == 2) return;
         Virtual_Objects.Room.virtualRoom Room = User.Room;
         if (Room.Channel == 3 && Room.Mode == 12)
         {
             if (User.IsEscapeZombie)
             {
                 Room.EscapeZombie--;
             }
             else
             {
                 Room.EscapeHuman--;
             }
         }
         if (User.isSpectating)
         {
             User.Room.removeSpectator(User);
             return;
         }
         if (User.Room != null)
         {
             User.Room.RemoveUser(User.RoomSlot);
         }
         User.Alive        = false; //FreeWar : Test Per Bug CQC
         User.BackedToRoom = false;
         User.send(new Packets.PACKET_ROOM_LIST(User, User.Page));
     }
     catch (Exception ex)
     {
         Log.AppendError(ex.Message);
     }
 }
Esempio n. 14
0
        /// <summary>
        /// Adds a virtualUser class together with the userID to the userManager. Login ticket will be nulled and previous logged in instances of this user will be dropped.
        /// </summary>
        /// <param name="userID">The ID of the user to add.</param>
        /// <param name="User">The virtualUser class of this user.</param>
        public static void addUser(int userID, virtualUser User)
        {
            if (_Users.ContainsKey(userID))
            {
                virtualUser oldUser = ((virtualUser)_Users[userID]);
                oldUser.Disconnect();
                if (_Users.ContainsKey(userID))
                {
                    _Users.Remove(userID);
                }
            }
            using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
            {
                dbClient.AddParamWithValue("name", User._Username);
                if (User.connectionRemoteIP == dbClient.getString("SELECT ipaddress_last FROM users WHERE name = @name LIMIT 1"))
                {
                    _Users.Add(userID, User);
                    dbClient.runQuery("UPDATE users SET ticket_sso = NULL WHERE id = '" + userID + "' LIMIT 1");
                    Out.WriteLine("User " + userID + " logged in. [" + User._Username + "]", Out.logFlags.BelowStandardAction);
                }

                else
                {
                    User.Disconnect(1000);
                    User.sendData("BK" + "Invalid Session Ticket, please login again!");
                }

                if (_Users.Count > dbClient.getInt("SELECT onlinecount_peak FROM system"))
                {
                    _peakUserCount = _Users.Count;
                }
            }
        }
Esempio n. 15
0
 internal gamePlayer(virtualUser User, int roomUID, Game Game)
 {
     this.User    = User;
     this.roomUID = roomUID;
     this.Game    = Game;
     this.teamID  = -1;
 }
Esempio n. 16
0
 /// <summary>
 /// Initializes a virtual room user.
 /// </summary>
 /// <param name="userID">The database ID of the virtual user of this room user object.</param>
 /// <param name="roomID">The database ID of the room where the room user is in.</param>
 /// <param name="roomUID">The ID that identifies the room user in the virtual room.</param>
 /// <param name="User">The parent vittual user of this room user.</param>
 /// <param name="statusManager">The status manager of this room user.</param>
 internal virtualRoomUser(int userID, int roomID, int roomUID, virtualUser User, virtualRoomUserStatusManager statusManager)
 {
     this.userID        = userID;
     this.roomID        = roomID;
     this.roomUID       = roomUID;
     this.User          = User;
     this.statusManager = statusManager;
 }
Esempio n. 17
0
 public PACKET_LOGIN_EVENT_MESSEGE(virtualUser User)
 {
     newPacket(21281);
     addBlock("0");
     addBlock("CZ99");
     addBlock((User.rebuildWeaponList()));
     addBlock(User.rebuildCostumeList());
 }
Esempio n. 18
0
        public override void Handle(virtualUser User)
        {
            int    ID             = Convert.ToInt32(getBlock(0));
            int    Days           = 0;
            int    CouponToRemove = 0;
            string WeaponToBuy    = null;

            #region Calculate
            switch (ID)
            {
            case 0: WeaponToBuy = "DS01"; Days = 3; CouponToRemove = 5; break;

            case 1: WeaponToBuy = "DS10"; Days = 3; CouponToRemove = 10; break;

            case 2: WeaponToBuy = "DS03"; Days = 3; CouponToRemove = 10; break;

            case 3: WeaponToBuy = "DF15"; Days = 3; CouponToRemove = 20; break;

            case 4: WeaponToBuy = "DG40"; Days = 3; CouponToRemove = 25; break;

            case 5: WeaponToBuy = "DJ35"; Days = 3; CouponToRemove = 30; break;

            case 6: WeaponToBuy = "CC41"; Days = 1; CouponToRemove = 30; break;

            case 7: WeaponToBuy = "DG22"; Days = 3; CouponToRemove = 35; break;

            case 8: WeaponToBuy = "DC77"; Days = 7; CouponToRemove = 45; break;

            default: User.disconnect(); break;
            }
            #endregion
            if (User.Coupons >= CouponToRemove)
            {
                int InventorySlot = User.InventorySlots;
                if (InventorySlot > 0)
                {
                    User.Coupons -= CouponToRemove;
                    DB.runQuery("UPDATE users SET coupons='" + User.Coupons + "' WHERE id='" + User.UserID + "'");
                    if (WeaponToBuy == null)
                    {
                        User.disconnect();
                    }
                    User.AddItem(WeaponToBuy, Days, 1);
                    User.send(new PACKET_COUPON_BUY(WeaponToBuy, User));
                    User.send(new PACKET_COUPON_EVENT(User));
                    User.reloadCash();
                }
                else
                {
                    User.send(new PACKET_ITEMSHOP(PACKET_ITEMSHOP.ErrorCodes.InventoryFull, "NULL"));
                }
            }
            else
            {
                User.send(new PACKET_COUPON_BUY(PACKET_COUPON_BUY.ErrorCode.NotEnoughCoupons));
            }
        }
Esempio n. 19
0
 public void Leave(virtualUser usr)
 {
     if (usr.currentSeat != null)
     {
         usr.currentSeat.LeaveSeat(usr);
         usr.currentSeat = null;
     }
     usr.currentVehicle = null;
 }
Esempio n. 20
0
 public bool TakeSeat(virtualUser usr)
 {
     if (seatOwner == null)
     {
         seatOwner = usr;
         return(true);
     }
     return(false);
 }
Esempio n. 21
0
        public override void Handle(virtualUser User)
        {
            //N***a will invade the world.
            bool   Equip        = (getBlock(0) == "0") ? true : false;
            int    Class        = Convert.ToInt32(getBlock(1));
            string Code         = getBlock(4);
            int    WhereToPlace = Convert.ToInt32(getBlock(5));

            string Costume = getCostume(User, Class);

            Item Item = ItemManager.getItem(Code);

            {
                if (Equip == true)
                {
                    string[] Placment = Costume.Split(new char[] { ',' });
                    if (Code.Contains("BA"))
                    {
                        for (int I = 0; I < Placment.Length; I++)
                        {
                            Placment[I] = "^";
                        }
                        Placment[0] = Code;
                    }
                    else
                    {
                        Placment[WhereToPlace] = Code;
                    }
                    string newCostumeParts = string.Join(",", Placment);
                    Code = newCostumeParts;
                    updateCostume(User, Class, Code);
                    DB.runQuery("UPDATE users_costumes SET class_" + Class + "='" + Code + "' WHERE ownerid='" + User.UserID + "'");
                }
                else
                {
                    string[] Placment = Costume.Split(new char[] { ',' });
                    if (Code.Contains("BA"))
                    {
                        for (int I = 0; I < Placment.Length; I++)
                        {
                            Placment[I] = "^";
                        }
                        Placment[0] = getDefaultClass(Class);
                    }
                    else
                    {
                        Placment[WhereToPlace] = "^";
                    }
                    string newCostumeParts = string.Join(",", Placment);
                    Code = newCostumeParts;
                    updateCostume(User, Class, Code);
                    DB.runQuery("UPDATE users_costumes SET class_" + Class + "='" + Code + "' WHERE ownerid='" + User.UserID + "'");
                }
            }
            User.send(new Packets.PACKET_COSTUME_EQUIPMENT(User, Class, Code));
            User.reloadCash();
        }
Esempio n. 22
0
        public bool TakeSeat(int ID, virtualUser usr)
        {
            Seats.Values.Where(r => r.seatOwner.UserID == usr.UserID).First().LeaveSeat(usr);

            foreach (VehicleSeat Seat in Seats.Values)
            {
                return(Seat.TakeSeat(usr));
            }
            return(false);
        }
Esempio n. 23
0
        public int GetSeat(virtualUser usr)
        {
            try
            {
                return(Seats.Values.Where(r => r.seatOwner.UserID == usr.UserID).First().ID);
            }
            catch { }

            return(-1);
        }
Esempio n. 24
0
        public VehicleSeat GetSeatByUser(virtualUser usr)
        {
            try
            {
                return(Seats.Values.Where(r => r.seatOwner.UserID == usr.UserID).First());
            }
            catch { }

            return(null);
        }
Esempio n. 25
0
        public int GetUserSeatID(virtualUser usr)
        {
            var v = Seats.Values.Where(r => r.seatOwner.UserID == usr.UserID).FirstOrDefault();

            if (v != null)
            {
                return(v.ID);
            }
            return(-1);
        }
Esempio n. 26
0
 public PACKET_HAMRADIO(virtualUser User)
 {
     newPacket(30720);
     addBlock(1111);
     addBlock(1);
     addBlock("CZ73");
     addBlock((User.rebuildWeaponList()).ToString().Remove((User.rebuildWeaponList()).ToString().Length - 1));
     addBlock(User.getSlots());
     addBlock(User.Dinar);
 }
Esempio n. 27
0
 public static void sendToClan(virtualUser User, Packet p)
 {
     foreach (virtualUser ServerUser in UserManager.getAllUsers())
     {
         if (ServerUser.ClanID == User.ClanID && ServerUser.ClanRank != -1) // Check for clan id
         {
             ServerUser.send(p);
         }
     }
 }
Esempio n. 28
0
 public PACKET_GUN_SMITH(virtualUser User, string item, PACKET_GUN_SMITH.WonType type)
 {
     this.newPacket(30995);
     this.addBlock(1);
     this.addBlock(item);
     this.addBlock((byte)type);
     this.addBlock(User.Dinar);
     this.addBlock(User.Cash);
     this.addBlock(User.rebuildWeaponList());
     this.addBlock(User.Equipment);
 }
Esempio n. 29
0
 public PACKET_SUPPLY_EVENT(virtualUser Client, virtualRoom Room, string ItemCode)
 {
     //
     // 6 1 0 0 DF13 1
     newPacket(30053);
     addBlock(6); // FreeWar : Questo Dovrebbe la identificazione dello Stage!
     addBlock(1);
     addBlock(0);
     addBlock(Client.SupplyTemp);
     addBlock(ItemCode); // code arma
     addBlock("3");      // tempo
 }
Esempio n. 30
0
 public static bool addUser(virtualUser User)
 {
     if (UserManager._Users.Contains(User))
     {
         return(false);
     }
     UserManager._Users.Add(User);
     DB.runQuery("UPDATE users SET online = '1' WHERE id=" + User.UserID);
     User.LoginCountry.getName();
     Log.AppendText(User.Nickname + " logged in from " + User.Country.ToString() + " !");
     return(true);
 }