本文整理汇总了C#中HabboHotel类的典型用法代码示例。如果您正苦于以下问题:C# HabboHotel类的具体用法?C# HabboHotel怎么用?C# HabboHotel使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
HabboHotel类属于命名空间,在下文中一共展示了HabboHotel类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
Room Instance = PlusEnvironment.GetGame().GetRoomManager().TryGetRandomLoadedRoom();
if (Instance != null)
Session.SendMessage(new RoomForwardComposer(Instance.Id));
}
示例2: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (!Session.GetHabbo().InRoom)
return;
int PetId = Packet.PopInt();
RoomUser Pet = null;
if (!Session.GetHabbo().CurrentRoom.GetRoomUserManager().TryGetPet(PetId, out Pet))
{
//Okay so, we've established we have no pets in this room by this virtual Id, let us check out users, maybe they're creeping as a pet?!
RoomUser User = Session.GetHabbo().CurrentRoom.GetRoomUserManager().GetRoomUserByHabbo(PetId);
if (User == null)
return;
//Check some values first, please!
if (User.GetClient() == null || User.GetClient().GetHabbo() == null)
return;
//And boom! Let us send the information composer 8-).
Session.SendMessage(new PetInformationComposer(User.GetClient().GetHabbo()));
return;
}
//Continue as a regular pet..
if (Pet.RoomId != Session.GetHabbo().CurrentRoomId || Pet.PetData == null)
return;
Session.SendMessage(new PetInformationComposer(Pet.PetData));
}
示例3: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
int CreditsOwed = 0;
DataTable Table = null;
using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
{
dbClient.SetQuery("SELECT `asking_price` FROM `catalog_marketplace_offers` WHERE `user_id` = '" + Session.GetHabbo().Id + "' AND state = '2'");
Table = dbClient.getTable();
}
if (Table != null)
{
foreach (DataRow row in Table.Rows)
{
CreditsOwed += Convert.ToInt32(row["asking_price"]);
}
if (CreditsOwed >= 1)
{
Session.GetHabbo().Credits += CreditsOwed;
Session.SendMessage(new CreditBalanceComposer(Session.GetHabbo().Credits));
}
using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
{
dbClient.RunQuery("DELETE FROM `catalog_marketplace_offers` WHERE `user_id` = '" + Session.GetHabbo().Id + "' AND `state` = '2'");
}
}
}
示例4: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (Session == null || Session.GetHabbo() == null || Session.GetHabbo().GetMessenger() == null)
return;
int Amount = Packet.PopInt();
if (Amount > 50)
Amount = 50;
else if (Amount < 0)
return;
for (int i = 0; i < Amount; i++)
{
int RequestId = Packet.PopInt();
MessengerRequest Request = null;
if (!Session.GetHabbo().GetMessenger().TryGetRequest(RequestId, out Request))
continue;
if (Request.To != Session.GetHabbo().Id)
return;
if (!Session.GetHabbo().GetMessenger().FriendshipExists(Request.To))
Session.GetHabbo().GetMessenger().CreateFriendship(Request.From);
Session.GetHabbo().GetMessenger().HandleRequest(RequestId);
}
}
示例5: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
int SlotId = Packet.PopInt();
string Look = PlusEnvironment.GetGame().GetAntiMutant().RunLook(Packet.PopString());
string Gender = Packet.PopString();
using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
{
dbClient.SetQuery("SELECT null FROM `user_wardrobe` WHERE `user_id` = " + Session.GetHabbo().Id + " AND `slot_id` = @slot");
dbClient.AddParameter("slot", SlotId);
if (dbClient.getRow() != null)
{
dbClient.SetQuery("UPDATE `user_wardrobe` SET `look` = @look, `gender` = @gender WHERE `user_id` = '" + Session.GetHabbo().Id + "' AND `slot_id` = @slot LIMIT 1");
dbClient.AddParameter("slot", SlotId);
dbClient.AddParameter("look", Look);
dbClient.AddParameter("gender", Gender.ToUpper());
dbClient.RunQuery();
}
else
{
dbClient.SetQuery("INSERT INTO `user_wardrobe` (`user_id`,`slot_id`,`look`,`gender`) VALUES ('" + Session.GetHabbo().Id + "',@slot,@look,@gender)");
dbClient.AddParameter("slot", SlotId);
dbClient.AddParameter("look", Look);
dbClient.AddParameter("gender", Gender.ToUpper());
dbClient.RunQuery();
}
}
}
示例6: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, Messages.ClientMessage Packet)
{
Silverwave.HabboHotel.Users.Habbo targetHabbo = Session.GetHabbo();
if (targetHabbo == null)
{
return;
}
uint Id = Packet.PopWiredUInt();
RoomData Data = SilverwaveEnvironment.GetGame().GetRoomManager().GenerateRoomData(Id);
if (Data == null || Session.GetHabbo().FavoriteRooms.Count >= 30 || Session.GetHabbo().FavoriteRooms.Contains(Id))
{
// send packet that favourites is full.
return;
}
Session.GetHabbo().FavoriteRooms.Add(Id);
Session.SendMessage(new UpdateFavouriteRoomComposer(Id, true));
using (IQueryAdapter dbClient = SilverwaveEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.runFastQuery("INSERT INTO user_favorites (user_id,room_id) VALUES (" + Session.GetHabbo().Id + "," + Id + ")");
}
}
示例7: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (Session == null || Session.GetHabbo() == null || !Session.GetHabbo().InRoom)
return;
Room Room = null;
if (!PlusEnvironment.GetGame().GetRoomManager().TryGetRoom(Session.GetHabbo().CurrentRoomId, out Room))
return;
RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id);
if (User == null)
return;
RoomUser TargetUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Packet.PopInt());
if (TargetUser == null)
return;
if (!((Math.Abs((User.X - TargetUser.X)) >= 3) || (Math.Abs((User.Y - TargetUser.Y)) >= 3)) || Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
{
if (User.CarryItemID > 0 && User.CarryTimer > 0)
{
if (User.CarryItemID == 8)
PlusEnvironment.GetGame().GetQuestManager().ProgressUserQuest(Session, QuestType.GIVE_COFFEE);
TargetUser.CarryItem(User.CarryItemID);
User.CarryItem(0);
TargetUser.DanceId = 0;
}
}
}
示例8: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, Messages.ClientMessage Packet)
{
string Junk = Packet.PopFixedString();
string MachineId = Packet.PopFixedString();
Session.MachineId = MachineId;
}
示例9: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
int GroupId = Packet.PopInt();
string Name = PlusEnvironment.GetGame().GetChatManager().GetFilter().CheckMessage(Packet.PopString());
string Desc = PlusEnvironment.GetGame().GetChatManager().GetFilter().CheckMessage(Packet.PopString());
Group Group = null;
if (!PlusEnvironment.GetGame().GetGroupManager().TryGetGroup(GroupId, out Group))
return;
if (Group.CreatorId != Session.GetHabbo().Id)
return;
using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
{
dbClient.SetQuery("UPDATE `groups` SET `name`= @name, `desc` = @desc WHERE `id` = '" + GroupId + "' LIMIT 1");
dbClient.AddParameter("name", Name);
dbClient.AddParameter("desc", Desc);
dbClient.RunQuery();
}
Group.Name = Name;
Group.Description = Desc;
Session.SendMessage(new GroupInfoComposer(Group, Session));
}
示例10: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (!Session.GetHabbo().InRoom)
return;
Room Room = null;
if (!PlusEnvironment.GetGame().GetRoomManager().TryGetRoom(Session.GetHabbo().CurrentRoomId, out Room))
return;
if (!Room.CheckRights(Session))
return;
Item Item = Room.GetRoomItemHandler().GetItem(Packet.PopInt());
if (Item == null)
return;
if (Item.GetBaseItem().InteractionType == InteractionType.POSTIT || Item.GetBaseItem().InteractionType == InteractionType.CAMERA_PICTURE)
{
Room.GetRoomItemHandler().RemoveFurniture(Session, Item.Id);
using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
{
dbClient.RunQuery("DELETE FROM `items` WHERE `id` = '" + Item.Id + "' LIMIT 1");
}
}
}
示例11: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (Session == null || Session.GetHabbo() == null)
return;
if (!Session.GetHabbo().InRoom)
return;
int ItemId = Packet.PopInt();
Session.SendMessage(new HideWiredConfigComposer());
Room Room = Session.GetHabbo().CurrentRoom;
if (Room == null)
return;
Item SelectedItem = Room.GetRoomItemHandler().GetItem(ItemId);
if (SelectedItem == null)
return;
IWiredItem Box = null;
if (!Session.GetHabbo().CurrentRoom.GetWired().TryGet(ItemId, out Box))
return;
if (Box.Type == WiredBoxType.EffectGiveUserBadge && !Session.GetHabbo().GetPermissions().HasRight("room_item_wired_rewards"))
{
Session.SendNotification("You don't have the correct permissions to do this.");
return;
}
Box.HandleSave(Packet);
Session.GetHabbo().CurrentRoom.GetWired().SaveBox(Box);
}
示例12: Handle
public void Handle(HabboHotel.GameClients.GameClient Session, global::Essential.Messages.ClientMessage Event)
{
using(DatabaseClient dbClient = Essential.GetDatabase().GetClient())
{
string username = Event.PopFixedString();
string password = Event.PopFixedString(); //TODO: Hash undso..
dbClient.AddParamWithValue("username", username);
string currentpassword = "";
try
{
currentpassword = dbClient.ReadString("SELECT password FROM users WHERE [email protected]");
}
catch { }
if (currentpassword == "")
{ Session.SendMessage(new ServerMessage(Outgoing.InvalidUsername)); return; }
if (currentpassword != password)
{ Session.SendMessage(new ServerMessage(Outgoing.InvalidPassword)); return; }
ServerMessage asdf = new ServerMessage(12345);
asdf.AppendBoolean(true);
asdf.AppendString("Hi");
asdf.AppendInt32(1337);
asdf.AppendUInt(12345);
Session.SendMessage(asdf);
Session.tryLogin(dbClient.ReadString("SELECT auth_ticket FROM users WHERE [email protected]"));
}
}
示例13: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
if (Session == null || Session.GetHabbo() == null || !Session.GetHabbo().InRoom)
return;
Room Room = null;
if (!PlusEnvironment.GetGame().GetRoomManager().TryGetRoom(Session.GetHabbo().CurrentRoomId, out Room))
return;
if (!Room.CanTradeInRoom)
return;
Trade Trade = Room.GetUserTrade(Session.GetHabbo().Id);
if (Trade == null)
return;
int Amount = Packet.PopInt();
Item Item = Session.GetHabbo().GetInventoryComponent().GetItem(Packet.PopInt());
if (Item == null)
return;
List<Item> AllItems = Session.GetHabbo().GetInventoryComponent().GetItems.Where(x => x.Data.Id == Item.Data.Id).Take(Amount).ToList();
foreach (Item I in AllItems)
{
Trade.OfferItem(Session.GetHabbo().Id, I);
}
}
示例14: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
{
Room Room = Session.GetHabbo().CurrentRoom;
if (Room == null || !Room.CheckRights(Session, true))
return;
int ItemId = Packet.PopInt();
Item Item = Session.GetHabbo().CurrentRoom.GetRoomItemHandler().GetItem(ItemId);
if (Item == null)
return;
string Gender = Session.GetHabbo().Gender.ToLower();
string Figure = "";
foreach (string Str in Session.GetHabbo().Look.Split('.'))
{
if (Str.Contains("hr") || Str.Contains("hd") || Str.Contains("he") || Str.Contains("ea") || Str.Contains("ha"))
continue;
Figure += Str + ".";
}
Figure = Figure.TrimEnd('.');
if (Item.ExtraData.Contains(Convert.ToChar(5)))
{
string[] Flags = Item.ExtraData.Split(Convert.ToChar(5));
Item.ExtraData = Gender + Convert.ToChar(5) + Figure + Convert.ToChar(5) + Flags[2];
}
else
Item.ExtraData = Gender + Convert.ToChar(5) + Figure + Convert.ToChar(5) + "Default";
Item.UpdateState(true, true);
}
示例15: Parse
public void Parse(HabboHotel.GameClients.GameClient Session, Messages.ClientMessage Packet)
{
Session.SendMessage(new UserObjectComposer(Session.GetHabbo()));
Session.SendMessage(new UserPerksComposer());
Session.GetHabbo().InitMessenger(); // Temporary fixxx
}