示例#1
0
        public void GetNavigatorResponse(Response Response, Boolean AllowEvents)
        {
            Response.AppendInt32(Id);
            Response.AppendBoolean(AllowEvents);
            Response.AppendStringWithBreak((AllowEvents) ? Event.Name : Name);
            Response.AppendStringWithBreak(BrickEngine.GetUserReactor().GetUsername(OwnerId));
            Response.AppendInt32(DoorState);
            Response.AppendInt32(RoomUserAmount);
            Response.AppendInt32(LimitUsers);
            Response.AppendStringWithBreak((AllowEvents) ? Event.Description : Description);
            Response.AppendBoolean(false);
            Response.AppendBoolean(BrickEngine.GetNavigatorManager().GetPrivateCategory(CategoryId).EnableTrading);
            Response.AppendInt32(Rating);
            Response.AppendInt32((AllowEvents) ? Event.CategoryId : CategoryId);

            if (AllowEvents)
            {
                Response.AppendString(Event.Started.ToShortTimeString());
            }

            Response.AppendChar(2);
            Response.AppendInt32((AllowEvents) ? Event.Tags.Count : Tags.Count);

            if (AllowEvents)
            {
                Event.Tags.ToList().ForEach(Response.AppendStringWithBreak);
            }
            else
            {
                Tags.ToList().ForEach(Response.AppendStringWithBreak);
            }

            Icon.GetResponse(Response);

            Response.AppendBoolean(true);
            Response.AppendBoolean(false);
        }
        public void GetStatusResponse(Response Response)
        {
            Response.AppendInt32(VirtualId);
            Response.AppendInt32(Point.X);
            Response.AppendInt32(Point.Y);
            Response.AppendStringWithBreak(Point.Z.ToString().Replace(",", "."));
            Response.AppendInt32(RotHead);
            Response.AppendInt32(RotBody);
            Response.AppendString("/");

            foreach (KeyValuePair<string, string> kvp in Statusses)
            {
                Response.AppendString(string.Format("{0} {1}/", kvp.Key, kvp.Value));
            }

            Response.AppendStringWithBreak("/");
        }