예제 #1
0
        public LevelChunkTrackerSystem(LevelChunkInteractiveObject AssociatedLevelChunkInteractiveObject, LevelChunkInteractiveObjectDefinition LevelChunkInteractiveObjectDefinition,
                                       Action <CoreInteractiveObject> OnLevelChunkTriggerEnterAction, Action <CoreInteractiveObject> OnLevelChunkTriggerExitAction)
        {
            this.LevelChunkTrackerRange = new BoxRangeObjectV2(AssociatedLevelChunkInteractiveObject.InteractiveGameObject.InteractiveGameObjectParent, new BoxRangeObjectInitialization()
            {
                BoxRangeTypeDefinition = new BoxRangeTypeDefinition()
                {
                    Center = LevelChunkInteractiveObjectDefinition.LocalCenter,
                    Size   = LevelChunkInteractiveObjectDefinition.LocalSize
                },
                RangeTypeID = RangeTypeID.NOT_DISPLAYED,
                IsTakingIntoAccountObstacles = false
            }, AssociatedLevelChunkInteractiveObject, nameof(LevelChunkTrackerSystem.LevelChunkTrackerRange));

            this.LevelChunkTrackerRange.RegisterPhysicsEventListener(
                new InteractiveObjectPhysicsEventListenerDelegated((InteractiveObjectPhysicsTriggerInfo) => InteractiveObjectPhysicsTriggerInfo.GetOtherInteractiveObjectTag().IsPlayer, OnLevelChunkTriggerEnterAction, OnLevelChunkTriggerExitAction)
                );
        }
예제 #2
0
 public LevelChunkInteractiveObject(IInteractiveGameObject interactiveGameObject, LevelChunkInteractiveObjectDefinition LevelChunkInteractiveObjectDefinition)
 {
     this.LevelChunkInteractiveObjectDefinition = LevelChunkInteractiveObjectDefinition;
     base.BaseInit(interactiveGameObject, false);
 }