예제 #1
0
        private void OnLightSourceStartMoving(IEventData eventData)
        {
            EntityStartMovementEvent movementEvent = eventData as EntityStartMovementEvent;
            Entity entity = lightCasters.Find(x => x.Guid == movementEvent.EntityId);

            if (entity != null)
            {
                movingLightCasters.Add(entity, entity.CellTransform.Position);
            }
        }
예제 #2
0
        private void OnEntityStartMovement(IEventData eventData)
        {
            if (mapManager.Contains(entity))
            {
                EntityStartMovementEvent entityEvent = eventData as EntityStartMovementEvent;

                if (IsEntityInRange(entityEvent.NextPosition, entity.CellTransform.Position))
                {
                    Entity activeEntity = entityManager.Get(entityEvent.EntityId);
                    interaction.EntityEntersRange(activeEntity, entity);
                }
            }
        }
예제 #3
0
        private void OnEntityStartsMoving(IEventData eventData)
        {
            EntityStartMovementEvent entityEvent = eventData as EntityStartMovementEvent;

            faceDirection.Direction = GetDirection(entityEvent.CurrentPosition, entityEvent.NextPosition);
        }