本文整理汇总了C#中Firewind.HabboHotel.GameClients.GameClient.GetHabbo方法的典型用法代码示例。如果您正苦于以下问题:C# GameClient.GetHabbo方法的具体用法?C# GameClient.GetHabbo怎么用?C# GameClient.GetHabbo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Firewind.HabboHotel.GameClients.GameClient
的用法示例。
在下文中一共展示了GameClient.GetHabbo方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SellItem
internal static void SellItem(GameClient Session, uint ItemId, int SellingPrice)
{
UserItem Item = Session.GetHabbo().GetInventoryComponent().GetItem(ItemId);
if (Item == null || SellingPrice > 10000 || !CanSellItem(Item))
{
Session.GetMessageHandler().GetResponse().Init(610);
Session.GetMessageHandler().GetResponse().AppendBoolean(false);
Session.GetMessageHandler().GetResponse();
Session.GetMessageHandler().SendResponse();
return;
}
int Comission = CalculateComissionPrice(SellingPrice);
int TotalPrice = SellingPrice + Comission;
int ItemType = 1;
if (Item.GetBaseItem().Type == 'i')
ItemType++;
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.setQuery("INSERT INTO catalog_marketplace_offers (item_id,user_id,asking_price,total_price,public_name,sprite_id,item_type,timestamp,extra_data) VALUES (" + Item.BaseItem + "," + Session.GetHabbo().Id + "," + SellingPrice + "," + TotalPrice + ",@public_name," + Item.GetBaseItem().SpriteId + "," + ItemType + "," + FirewindEnvironment.GetUnixTimestamp() + ",@extra_data)");
dbClient.addParameter("public_name", "NEEDS REPLACMENT HERE");
dbClient.addParameter("extra_data", Item.Data);
dbClient.runQuery();
}
Session.GetHabbo().GetInventoryComponent().RemoveItem(ItemId, false);
Session.GetHabbo().GetInventoryComponent().RunDBUpdate();
Session.GetMessageHandler().GetResponse().Init(610);
Session.GetMessageHandler().GetResponse().AppendBoolean(true);
Session.GetMessageHandler().SendResponse();
}
示例2: UserGotAuthorization
internal bool UserGotAuthorization(GameClient session)
{
foreach(string subs in clubsAllowed){
if (session.GetHabbo().GetSubscriptionManager().HasSubscription(subs))
return true;
}
if (minrank == 0)
return true;
else if (minrank > 0)
{
if (minrank <= session.GetHabbo().Rank)
return true;
}
else if (minrank < 0)
{
if (minrank == -1)
{
if (session.GetHabbo().CurrentRoom.CheckRights(session, false))
return true;
}
else if (minrank == -2)
{
if (session.GetHabbo().CurrentRoom.CheckRights(session, true))
return true;
}
}
return false;
}
示例3: AlertUser
internal static void AlertUser(GameClient ModSession, uint UserId, String Message, Boolean Caution)
{
GameClient Client = FirewindEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
if (Client == null || Client.GetHabbo().Id == ModSession.GetHabbo().Id)
{
return;
}
if (Caution && Client.GetHabbo().Rank >= ModSession.GetHabbo().Rank)
{
ModSession.SendNotif(LanguageLocale.GetValue("moderation.caution.missingrank"));
Caution = false;
}
Client.SendNotif(Message, Caution);
if (Caution)
{
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.runFastQuery("UPDATE user_info SET cautions = cautions + 1 WHERE user_id = " + UserId + "");
}
}
}
示例4: GivePixels
internal static void GivePixels(GameClient Client, int amount)
{
Double Timestamp = FirewindEnvironment.GetUnixTimestamp();
Client.GetHabbo().LastActivityPointsUpdate = Timestamp;
Client.GetHabbo().ActivityPoints += amount;
Client.GetHabbo().UpdateActivityPointsBalance(0);
}
示例5: CreateGroup
public Group CreateGroup(GameClient creator, string name, string description, int roomID, int color1, int color2, List<Tuple<int, int, int>> badgeData)
{
// We call this method after doing all checks.
int groupID;
string badgeCode = Group.GenerateBadgeImage(badgeData);
string createTime = DateTime.Now.ToString("d-M-yyyy");
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
// Insert the group
dbClient.setQuery("INSERT INTO guild(name,description,badge,users_id,rooms_id,color1,color2,date_created) VALUES(@name,@desc,@badge,@ownerid,@roomid,@color1,@color2,@date)");
dbClient.addParameter("name", name);
dbClient.addParameter("desc", description);
dbClient.addParameter("ownerid", creator.GetHabbo().Id);
dbClient.addParameter("roomid", roomID);
dbClient.addParameter("color1", color1);
dbClient.addParameter("color2", color2);
dbClient.addParameter("badge", badgeCode);
dbClient.addParameter("date", createTime);
groupID = (int)dbClient.insertQuery();
}
Group group = new Group()
{
ID = groupID,
Name = name,
Description = description,
RoomID = roomID,
ColorID1 = color1,
ColorID2 = color2,
BadgeCode = badgeCode,
DateCreated = createTime,
};
return group;
}
示例6: AddToPlaylist
private static void AddToPlaylist(GameClient Session, ClientMessage Message)
{
Room Instance = Session.GetHabbo().CurrentRoom;
if (Instance == null || !Instance.CheckRights(Session, true) || !Instance.GotMusicController() ||
Instance.GetRoomMusicController().PlaylistSize >= Instance.GetRoomMusicController().PlaylistCapacity)
{
return;
}
UserItem DiskUserItem = Session.GetHabbo().GetInventoryComponent().GetItem(Message.ReadUInt32());
if (DiskUserItem == null || DiskUserItem.GetBaseItem().InteractionType != InteractionType.musicdisc)
{
return;
}
SongItem item = new SongItem(DiskUserItem);
int NewOrder = Instance.GetRoomMusicController().AddDisk(item);
if (NewOrder < 0)
{
return;
}
Session.GetHabbo().GetInventoryComponent().RemoveItem(item.itemID, true);
Session.SendMessage(JukeboxComposer.Compose(Instance.GetRoomMusicController().PlaylistCapacity,
Instance.GetRoomMusicController().Playlist.Values.ToList()));
}
示例7: CreateGroup
public Group CreateGroup(GameClient creator, string name, string description, int roomID, int color1, int color2, List<Tuple<int, int, int>> badgeData)
{
// We call this method after doing all checks.
int groupID;
//string badgeCode = Group.GenerateBadgeImage(badgeData);
string createTime = DateTime.Now.ToString("d-M-yyyy");
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
// Insert the group
dbClient.setQuery("INSERT INTO groups(name,description,badge_data,users_id,rooms_id,color1,color2,date_created) VALUES(@name,@desc,@badge,@ownerid,@roomid,@color1,@color2,@date)");
dbClient.addParameter("name", name);
dbClient.addParameter("desc", description);
dbClient.addParameter("ownerid", creator.GetHabbo().Id);
dbClient.addParameter("roomid", roomID);
dbClient.addParameter("color1", color1);
dbClient.addParameter("color2", color2);
dbClient.addParameter("badge", Group.ConvertBadgeForDatabase(badgeData));
dbClient.addParameter("date", createTime);
groupID = (int)dbClient.insertQuery();
// Create membership for owner
dbClient.setQuery("INSERT INTO group_memberships VALUES(@id,@groupid,3,1)");
dbClient.addParameter("id", creator.GetHabbo().Id);
dbClient.addParameter("groupid", groupID);
dbClient.runQuery();
// Update room
dbClient.runFastQuery("UPDATE rooms SET groups_id = " + groupID + " WHERE id = " + roomID);
}
Group group = new Group()
{
ID = groupID,
Name = name,
Description = description,
RoomID = roomID,
ColorID1 = color1,
ColorID2 = color2,
BadgeData = badgeData,
DateCreated = createTime
};
group.Members.Add(creator.GetHabbo().Id);
string s = group.BadgeCode;
return group;
}
示例8: NeedsUpdate
internal static Boolean NeedsUpdate(GameClient Client)
{
try
{
if (Client.GetHabbo() == null)
return false;
Double PassedMins = (FirewindEnvironment.GetUnixTimestamp() - Client.GetHabbo().LastActivityPointsUpdate) / 60;
if (PassedMins >= RCV_EVERY_MINS)
return true;
}
catch (Exception e)
{
Logging.HandleException(e, "PixelManager.NeedsUpdate");
}
return false;
}
示例9: Serialize
internal ServerMessage Serialize(GameClient Session)
{
ServerMessage Message = new ServerMessage(Outgoing.RoomEvent);
Message.AppendString(Session.GetHabbo().Id + "");
Message.AppendString(Session.GetHabbo().Username);
Message.AppendString(RoomId + "");
Message.AppendInt32(Category);
Message.AppendString(Name);
Message.AppendString(Description);
Message.AppendString(StartTime);
Message.AppendInt32(Tags.Count);
foreach (string Tag in Tags.ToArray())
{
Message.AppendString(Tag);
}
return Message;
}
示例10: BanUser
internal static void BanUser(GameClient ModSession, uint UserId, int Length, String Message)
{
GameClient Client = FirewindEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
if (Client == null || Client.GetHabbo().Id == ModSession.GetHabbo().Id)
{
return;
}
if (Client.GetHabbo().Rank >= ModSession.GetHabbo().Rank)
{
ModSession.SendNotif(LanguageLocale.GetValue("moderation.ban.missingrank"));
return;
}
Double dLength = Length;
FirewindEnvironment.GetGame().GetBanManager().BanUser(Client, ModSession.GetHabbo().Username, dLength, Message, false);
}
示例11: CreateMessage
internal static ChatMessage CreateMessage(string message, GameClient user, Room room)
{
int userID = user.GetHabbo().Id;
string username = user.GetHabbo().Username;
uint roomID = room.RoomId;
string roomName = room.Name;
DateTime timeSpoken = DateTime.Now;
ChatMessage chatMessage = new ChatMessage(userID, username, roomID, roomName, message, timeSpoken);
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.setQuery("INSERT into `chatlogs`(`user_id`, `room_id`, `hour`, `minute`, `full_date`, `timestamp`, `message`, `user_name`) VALUES(" + userID + ", " + roomID + ", " + timeSpoken.Hour + ", " + timeSpoken.Minute + ", '" + timeSpoken.ToString() + "', " + FirewindEnvironment.GetUnixTimestamp() + ", @msg, '" + user.GetHabbo().Username + "');");
dbClient.addParameter("msg", message);
dbClient.runQuery();
}
return chatMessage;
}
示例12: ActivateQuest
internal void ActivateQuest(GameClient Session, ClientMessage Message)
{
Quest Quest = GetQuest(Message.ReadUInt32());
if (Quest == null)
{
return;
}
using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.runFastQuery("REPLACE INTO user_quests VALUES (" + Session.GetHabbo().Id + ", " + Quest.Id + ", 0)");
dbClient.runFastQuery("UPDATE users SET currentquestid = " + Quest.Id + " WHERE id = " + Session.GetHabbo().Id);
}
Session.GetHabbo().CurrentQuestId = Quest.Id;
GetList(Session, null);
Session.SendMessage(QuestStartedComposer.Compose(Session, Quest));
}
示例13: RoomUser
public RoomUser(int virtualID, GameClient client, Room room)
: base(virtualID, room)
{
// Base constructor already called
this.Client = client;
Habbo habbo = client.GetHabbo();
this.ID = habbo.Id;
this.Name = habbo.Username;
this.Figure = habbo.Look;
this.Motto = habbo.Motto;
}
示例14: TryRedeemVoucher
internal static void TryRedeemVoucher(GameClient Session, string Code)
{
if (!IsValidCode(Code))
{
ServerMessage Error = new ServerMessage(Outgoing.VoucherRedeemError);
Error.AppendRawInt32(0); // 0=invalid code,1=technical issue,3=redeem at webpage
Session.SendMessage(Error);
return;
}
int Value = GetVoucherValue(Code);
TryDeleteVoucher(Code);
Session.GetHabbo().Credits += Value;
Session.GetHabbo().UpdateCreditsBalance();
ServerMessage message = new ServerMessage(Outgoing.VoucherRedeemOk);
message.AppendString("Credits"); // productName
message.AppendString("Awesome"); // productDescription
Session.SendMessage(message);
}
示例15: OnTrigger
internal override bool OnTrigger(GameClient Session, RoomItem Item, int Request, bool UserHasRights)
{
if (Session == null)
return false;
RoomUser interactingUser = Item.GetRoom().GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id);
Point userCoord = interactingUser.Coordinate;
Point ballCoord = Item.Coordinate;
int differenceX = userCoord.X - ballCoord.X;
int differenceY = userCoord.Y - ballCoord.Y;
if (differenceX <= 1 && differenceX >= -1 && differenceY <= 1 && differenceY >= -1)
{
differenceX = differenceX * 2;
differenceY = differenceY * 2;
int newX = Item.GetX + differenceX;
int newY = Item.GetY + differenceY;
Item.GetRoom().GetSoccer().MoveBall(Item, Session, newX, newY);
interactingUser.MoveTo(ballCoord);
}
else //if (differenceX == 2 || differenceY == 2 || differenceY == - 2 || differenceX == -2)
{
Item.interactingBallUser = Session.GetHabbo().Id;
differenceX = differenceX * (-1);
differenceY = differenceY * (-1);
if (differenceX > 1)
differenceX = 1;
else if (differenceX < -1)
differenceX = -1;
if (differenceY > 1)
differenceY = 1;
else if (differenceY < -1)
differenceY = -1;
int newX = Item.GetX + differenceX;
int newY = Item.GetY + differenceY;
interactingUser.MoveTo(new Point(newX, newY));
}
return true;
}