示例#1
0
 public ServerDestructibleObjectListener(Contexts contexts) : base(contexts, ETriggerObjectType.DestructibleObject,
                                                                   MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                                          MapObjectMatcher.TriggerObjectId,
                                                                                          MapObjectMatcher.DestructibleObjectFlag,
                                                                                          MapObjectMatcher.DestructibleData))
 {
     _detachCallback = new ServerFracturedChunkDetachCallback(contexts);
 }
示例#2
0
 public ServerGlassyObjectListener(Contexts contexts) : base(contexts, ETriggerObjectType.GlassyObject,
                                                             MapObjectMatcher.AllOf(
                                                                 MapObjectMatcher.EntityKey,
                                                                 MapObjectMatcher.TriggerObjectId,
                                                                 MapObjectMatcher.GlassyData))
 {
     _currentTime = contexts.session.currentTimeObject;
 }
示例#3
0
 public ClientGlassyObjectListener(Contexts contexts) : base(contexts, ETriggerObjectType.GlassyObject,
                                                             MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                                    MapObjectMatcher.TriggerObjectId,
                                                                                    MapObjectMatcher.GlassyData,
                                                                                    MapObjectMatcher.RawGameObject),
                                                             MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                                    MapObjectMatcher.TriggerObjectId,
                                                                                    MapObjectMatcher.GlassyData)
                                                             .NoneOf(MapObjectMatcher.RawGameObject))
 {
 }
        public ServerDestructibleObjectUpdateSystem(Contexts contexts)
        {
            _destructObjListener = new ServerDestructibleObjectListener(contexts);
            _glassyObjListener   = new ServerGlassyObjectListener(contexts);
            _context             = contexts.mapObject;
            _eventObjects        = _context.GetGroup(MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                            MapObjectMatcher.TriggerObjectId,
                                                                            MapObjectMatcher.TriggerObjectEvent,
                                                                            MapObjectMatcher.TriggerObjectEventFlag,
                                                                            MapObjectMatcher.RawGameObject));

            _currentTime = contexts.session.currentTimeObject;
        }
示例#5
0
 public ClientDestructibleObjectListener(Contexts contexts) : base(contexts, ETriggerObjectType.DestructibleObject,
                                                                   MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                                          MapObjectMatcher.TriggerObjectId,
                                                                                          MapObjectMatcher.DestructibleObjectFlag,
                                                                                          MapObjectMatcher.DestructibleData,
                                                                                          MapObjectMatcher.RawGameObject),
                                                                   MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                                          MapObjectMatcher.TriggerObjectId,
                                                                                          MapObjectMatcher.DestructibleObjectFlag,
                                                                                          MapObjectMatcher.DestructibleData)
                                                                   .NoneOf(MapObjectMatcher.RawGameObject))
 {
     _detachCallback = new ClientFracturedChunkDetachCallback();
 }
示例#6
0
 public ClientDestructibleObjectUpdateSystem(Contexts contexts)
 {
     _destructObjListener = new ClientDestructibleObjectListener(contexts);
     _glassyObjListener   = new ClientGlassyObjectListener(contexts);
     _context             = contexts.mapObject;
     _destructibleObjects = _context.GetGroup(MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                                     MapObjectMatcher.TriggerObjectId,
                                                                     MapObjectMatcher.DestructibleData,
                                                                     MapObjectMatcher.RawGameObject));
     _glassyObjects = _context.GetGroup(MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                               MapObjectMatcher.TriggerObjectId,
                                                               MapObjectMatcher.GlassyData,
                                                               MapObjectMatcher.RawGameObject));
     _eventObjects = _context.GetGroup(MapObjectMatcher.AllOf(MapObjectMatcher.EntityKey,
                                                              MapObjectMatcher.TriggerObjectId,
                                                              MapObjectMatcher.TriggerObjectEvent,
                                                              MapObjectMatcher.TriggerObjectEventFlag,
                                                              MapObjectMatcher.RawGameObject));
     _sessionObjects = contexts.session.clientSessionObjects;
 }
示例#7
0
 protected override IGroup <MapObjectEntity> GetIGroup(Contexts contexts)
 {
     return(contexts.mapObject.GetGroup(MapObjectMatcher.AllOf(MapObjectMatcher.DoorData, MapObjectMatcher.RawGameObject)));
 }