Ejemplo n.º 1
0
        public static void HandleInstallBillBoard(GameSession session, PacketReader packet, Item item)
        {
            string[] parameters  = packet.ReadUnicodeString().Split("'");
            string   title       = parameters[0];
            string   description = parameters[1];
            bool     publicHouse = parameters[2].Equals("1");

            int       balloonUid = GuidGenerator.Int();
            string    id         = "AdBalloon_" + balloonUid.ToString();
            AdBalloon balloon    = new AdBalloon(id, item.Function.InstallBillboard.InteractId, InteractObjectState.Default, InteractObjectType.AdBalloon, session.FieldPlayer, item.Function.InstallBillboard, title, description, publicHouse);

            session.FieldManager.State.AddInteractObject(balloon);
            session.FieldManager.BroadcastPacket(InteractObjectPacket.LoadAdBallon(balloon));
            InventoryController.Consume(session, item.Uid, 1);
        }
Ejemplo n.º 2
0
    public static PacketWriter AdBalloonWindow(AdBalloon balloon)
    {
        PacketWriter pWriter = PacketWriter.Of(SendOp.PLAYER_HOST);

        pWriter.Write(PlayerHostPacketMode.AdBalloonWindow);
        pWriter.WriteLong(balloon.Owner.AccountId);
        pWriter.WriteLong(balloon.Owner.CharacterId);
        pWriter.WriteUnicodeString(balloon.Owner.ProfileUrl);
        pWriter.WriteUnicodeString(balloon.Owner.Name);
        pWriter.WriteShort(balloon.Owner.Levels.Level);
        pWriter.WriteInt();
        pWriter.WriteUnicodeString(balloon.Title);
        pWriter.WriteUnicodeString(balloon.Description);
        pWriter.WriteBool(balloon.PublicHouse);
        pWriter.WriteLong(balloon.CreationTimestamp);
        pWriter.WriteLong(balloon.ExpirationTimestamp);
        pWriter.WriteLong();
        return(pWriter);
    }
Ejemplo n.º 3
0
        public static Packet LoadAdBallon(AdBalloon balloon)
        {
            PacketWriter pWriter = PacketWriter.Of(SendOp.INTERACT_OBJECT);

            pWriter.WriteEnum(InteractObjectMode.AddAdBalloons);
            pWriter.WriteMapleString(balloon.Id);
            pWriter.WriteEnum(balloon.State);
            pWriter.WriteEnum(balloon.Type);
            pWriter.WriteInt(balloon.InteractId);
            pWriter.Write(balloon.Position);
            pWriter.Write(balloon.Rotation);
            pWriter.WriteUnicodeString(balloon.Model);
            pWriter.WriteUnicodeString(balloon.Asset);
            pWriter.WriteUnicodeString(balloon.NormalState);
            pWriter.WriteUnicodeString(balloon.Reactable);
            pWriter.WriteFloat(balloon.Scale);
            pWriter.WriteByte();
            pWriter.WriteLong(balloon.Owner.CharacterId);
            pWriter.WriteUnicodeString(balloon.Owner.Name);
            return(pWriter);
        }