SHOW:
|
|
- or go back to the newest paste.
1 | - | using System; |
1 | + | internal void ChangeLook() |
2 | - | using System.Collections; |
2 | + | |
3 | - | using System.Collections.Generic; |
3 | + | if (_session.GetHabbo().MutantPenalty) |
4 | - | using System.Drawing; |
4 | + | |
5 | - | using System.Linq; |
5 | + | _session.SendNotif( |
6 | - | using Butterfly.Core; |
6 | + | "Because of a penalty or restriction on your account, you are not allowed to change your look."); |
7 | - | using Butterfly.HabboHotel.Items; |
7 | + | |
8 | - | using Butterfly.HabboHotel.Pathfinding; |
8 | + | |
9 | - | using Butterfly.HabboHotel.Rooms.Games; |
9 | + | |
10 | - | using Butterfly.HabboHotel.Rooms.Wired; |
10 | + | var gender = _request.PopFixedString().ToUpper(); |
11 | - | using Butterfly.HabboHotel.GameClients; |
11 | + | var look = Xeno.FilterInjectionChars(_request.PopFixedString()); |
12 | ||
13 | - | namespace Butterfly.HabboHotel.Rooms |
13 | + | if (!AntiMutant.ValidateLook(look, gender)) |
14 | - | { |
14 | + | |
15 | - | internal class GameMap |
15 | + | |
16 | - | { |
16 | + | _session.GetHabbo().Look = AntiMutant.ReFixeateLook(Xeno.FilterFigure(look)); |
17 | - | #region Variables |
17 | + | _session.GetHabbo().Gender = gender.ToLower(); |
18 | ||
19 | - | /// <summary> |
19 | + | if (_session.GetHabbo().GetMessenger() != null) |
20 | - | /// La variable que mantiene la información de sala. |
20 | + | Xeno.GetGame().GetClientManager().QueueConsoleUpdate(_session); |
21 | - | /// </summary> |
21 | + | |
22 | - | private Room _room; |
22 | + | Xeno.GetGame() |
23 | .GetQuestManager() | |
24 | - | /// <summary> |
24 | + | .ProgressUserQuest(_session, QuestType.ProfileChangeLook); |
25 | - | /// Movimientos diagonales permitidos. |
25 | + | Xeno.GetGame() |
26 | - | /// </summary> |
26 | + | .GetAchievementManager() |
27 | - | internal bool DiagonalEnabled; |
27 | + | .ProgressUserAchievement(_session, _session.GetHabbo().Id, "ACH_AvatarLooks", 1); |
28 | ||
29 | - | /// <summary> |
29 | + | if (_session.GetHabbo().CitizenshipLevel == 1) |
30 | - | /// En esta podremos encontrar los usuarios que están sobre las baldosas. |
30 | + | Xeno.GetGame().GetTalentManager().UpdateTalentTravel(_session, "citizenship"); |
31 | - | /// </summary> |
31 | + | |
32 | - | private Hashtable _userMap; |
32 | + | _session.GetMessageHandler().GetResponse().Init(Outgoing.ChangeMiniLook); |
33 | _session.GetMessageHandler().GetResponse().AppendStringWithBreak(_session.GetHabbo().Look); | |
34 | - | /// <summary> |
34 | + | _session.GetMessageHandler().GetResponse().AppendStringWithBreak(_session.GetHabbo().Gender.ToUpper()); |
35 | - | /// Caché de puertas de grupo en esta sala. |
35 | + | _session.GetMessageHandler().SendResponse(); |
36 | - | /// </summary> |
36 | + | |
37 | - | internal Dictionary<Point, RoomItem> GuildGates; |
37 | + | _session.GetMessageHandler().GetResponse().Init(Outgoing.UpdateUserInformation); |
38 | _session.GetMessageHandler().GetResponse().AppendInt32(-1); | |
39 | - | internal DynamicRoomModel Model { get; private set; } |
39 | + | _session.GetMessageHandler().GetResponse().AppendStringWithBreak(_session.GetHabbo().Look); |
40 | _session.GetMessageHandler().GetResponse().AppendStringWithBreak(_session.GetHabbo().Gender.ToLower()); | |
41 | - | internal RoomModel StaticModel { get; private set; } |
41 | + | _session.GetMessageHandler().GetResponse().AppendStringWithBreak(_session.GetHabbo().Motto); |
42 | _session.GetMessageHandler().GetResponse().AppendUInt(_session.GetHabbo().AchievementPoints); | |
43 | - | internal byte[][] EffectMap { get; private set; } |
43 | + | _session.GetMessageHandler().SendResponse(); |
44 | ||
45 | - | internal Hashtable CoordinatedItems { get; private set; } |
45 | + | if (!_session.GetHabbo().InRoom) |
46 | return; | |
47 | - | internal Hashtable TileHeightApilable { get; private set; } |
47 | + | var room = _session.GetHabbo().CurrentRoom; |
48 | ||
49 | - | internal byte[][] Map { get; private set; } |
49 | + | if (room == null) |
50 | return; | |
51 | - | internal double[][] ItemHeightMap { get; private set; } |
51 | + | |
52 | var user = room.GetRoomUserManager().GetRoomUserByHabbo(_session.GetHabbo().Id); | |
53 | - | internal int[][] TileHeightMap { get; private set; } |
53 | + | |
54 | if (user == null) | |
55 | - | internal int[,] TileHeightMap1 { get; private set; } |
55 | + | |
56 | ||
57 | - | internal byte[,] GameMap1 { get; private set; } |
57 | + | var roomUpdate = new ServerMessage(Outgoing.UpdateUserInformation); |
58 | roomUpdate.AppendInt32(user.VirtualId); | |
59 | - | internal HashSet<Point> WalkableList; |
59 | + | roomUpdate.AppendStringWithBreak(_session.GetHabbo().Look); |
60 | roomUpdate.AppendStringWithBreak(_session.GetHabbo().Gender.ToLower()); | |
61 | - | #endregion |
61 | + | roomUpdate.AppendStringWithBreak(_session.GetHabbo().Motto); |
62 | roomUpdate.AppendUInt(_session.GetHabbo().AchievementPoints); | |
63 | - | #region Constructor |
63 | + | room.SendMessage(roomUpdate); |
64 | using (var dbClient = Xeno.GetDatabaseManager().GetQueryreactor()) | |
65 | - | public GameMap(Room room) |
65 | + | |
66 | dbClient.SetQuery("UPDATE users SET look = @look WHERE id = '" + _session.GetHabbo().Id + "'"); | |
67 | - | _room = room; |
67 | + | dbClient.AddParameter("motto", _session.GetHabbo().Look); |
68 | - | DiagonalEnabled = true; |
68 | + | dbClient.RunQuery(); |
69 | } | |
70 | - | StaticModel = Xeno.GetGame().GetRoomManager().GetModel(_room.RoomData.ModelName, _room.RoomId); |
70 | + | |
71 | - | if (StaticModel == null) |
71 | + | } |