public void Initialize(bool cashShop = false) { using (OutPacket oPacket = new OutPacket(cashShop ? SendOps.SetCashShop : SendOps.SetField)) { if (cashShop) { this.Encode(oPacket); oPacket .WriteByte(1) .WriteMapleString(this.Client.Account.Username) .WriteInt() .WriteShort() .WriteZero(121); for (int i = 1; i <= 8; i++) { for (int j = 0; j < 2; j++) { oPacket .WriteInt(i) .WriteInt(j) .WriteInt(50200004) .WriteInt(i) .WriteInt(j) .WriteInt(50200069) .WriteInt(i) .WriteInt(j) .WriteInt(50200117) .WriteInt(i) .WriteInt(j) .WriteInt(50100008) .WriteInt(i) .WriteInt(j) .WriteInt(50000047); } } oPacket .WriteInt() .WriteShort() .WriteByte() .WriteInt(75); } else { oPacket .WriteInt(this.Client.Channel) .WriteByte(++this.Portals) .WriteBool(true) .WriteShort(); // NOTE: Floating messages at top corner. for (int i = 0; i < 3; i++) { oPacket.WriteInt(Constants.Random.Next()); } this.Encode(oPacket); oPacket.WriteDateTime(DateTime.Now); } this.Client.Send(oPacket); } this.IsInitialized = true; if (!cashShop) { this.Map.Characters.Add(this); this.Notify(MasterServer.Instance.Worlds[this.Client.World].TickerMessage, NoticeType.Ticker); } }