Пример #1
0
        /// <summary>
        /// /!\ The creation of <see cref="PlayerAimRangeFeedbackSystem"/> must absolutely be done after that physics objects have been taken into account from the physics engine.
        ///     This is because the <paramref name="FiringPlayerActionTargetSystemRef"/> uses operations on newly created physics object to calculate
        ///     the target direction <see cref="FiringPlayerActionTargetSystem.Tick"/>
        /// </summary>
        public PlayerAimRangeFeedbackSystem(CoreInteractiveObject playerInteractiveObject, FiringPlayerActionTargetSystem FiringPlayerActionTargetSystemRef)
        {
            IsInitialized           = true;
            PlayerInteractiveObject = playerInteractiveObject;
            this.FiringPlayerActionTargetSystemRef = FiringPlayerActionTargetSystemRef;
            this.firingRangeFeedbackRangeObject    = new FiringRangeFeedbackRangeObject(
                InteractiveGameObjectFactory.Build_Allocate(new GameObject("FiringRangeFeedbackRangeObject")),
                PlayerAimingRangeFeedbackConfigurationGameObject.Get().playerAimingRangeVisualFeedbackConfiguration.FiredProjectileFeedbackPrefab,
                playerInteractiveObject);

            this.firingRangeFeedbackRangeObject.InitializeRaybox(CalculateFiringTargetPosition());
        }
Пример #2
0
 public override CoreInteractiveObject BuildInteractiveObject(GameObject interactiveGameObject)
 {
     return(new ObstacleInteractiveObject(InteractiveGameObjectFactory.Build_Allocate(interactiveGameObject), this));
 }
Пример #3
0
 protected override CoreInteractiveObject InitializationLogic()
 {
     return(new HealthGlobeInteractiveObject(this.RuntimeHealthGlobeInteractiveObjectDefinition, InteractiveGameObjectFactory.Build_Allocate(this.gameObject), this.BeziersControlPointsBuildInput));
 }
Пример #4
0
 public override void Init()
 {
     new LevelChunkInteractiveObject(InteractiveGameObjectFactory.Build(gameObject), this.LevelChunkInteractiveObjectDefinition);
 }
Пример #5
0
        protected override CoreInteractiveObject InitializationLogic()
        {
            var PlayerInteractiveObject = new PlayerInteractiveObject(InteractiveGameObjectFactory.Build_Allocate(gameObject), this.PlayerInteractiveObjectDefinition);

            return(PlayerInteractiveObject);
        }
Пример #6
0
 protected override CoreInteractiveObject InitializationLogic()
 {
     return(new LevelChunkInteractiveObject(InteractiveGameObjectFactory.Build_Allocate(gameObject), this.LevelChunkInteractiveObjectDefinition));
 }
Пример #7
0
        public Weapon BuildWeapon(CoreInteractiveObject WeaponHolder)
        {
            var weaponModelPrefab = Instantiate(this.WeaponModelPrefab);

            return(new Weapon(InteractiveGameObjectFactory.Build_Allocate(weaponModelPrefab), this, WeaponHolder));
        }
Пример #8
0
        public FiredProjectile BuildFiredProjectile(CoreInteractiveObject WeaponHolder)
        {
            var FiredProjectileModel = Instantiate(this.FiredProjectileModelPrefab);

            return(new FiredProjectile(InteractiveGameObjectFactory.Build_Allocate(FiredProjectileModel), this, WeaponHolder));
        }
Пример #9
0
 public override void Init()
 {
     new ObstacleInteractiveObject(InteractiveGameObjectFactory.Build(this.gameObject), InteractiveObjectInitializerData);
 }
Пример #10
0
        public override void Init()
        {
            var PlayerInteractiveObject = new PlayerInteractiveObject(InteractiveGameObjectFactory.Build(gameObject), InteractiveObjectLogicCollider, LocomotionAnimation);

            PlayerInteractiveObjectManager.Get().Init(PlayerInteractiveObject);
        }