示例#1
0
        public void Enter(WorldObject obj)
        {
            foreach (SimpleClient client in Clients)
            {
                ContextRoleplayHandler.SendSnapshotMessage(client, new Snapshot[] { new AddObjectSnapshot(obj.GetObjectType()) });
            }

            if (obj is Character)
            {
                Clients.Add((obj as Character).Client);
            }

            Objects.Add(obj);
            obj.Position.Map = this;
        }
示例#2
0
        public void Leave(WorldObject obj)
        {
            if (!Objects.Contains(obj))
            {
                return;
            }

            if (obj is Character)
            {
                Clients.Remove((obj as Character).Client);
            }

            Objects.Remove(obj);

            foreach (SimpleClient client in Clients)
            {
                ContextRoleplayHandler.SendSnapshotMessage(client, new Snapshot[] { new RemoveObjectSnapshot((uint)obj.GetHashCode()) });
            }
        }