コード例 #1
0
        public virtual void InitSightTrigger()
        {
            _sightTrigger = GetComponentInChildren <SphereCollider>();
            if (_sightTrigger == null)
            {
                var obj = new GameObject("_Col");
                obj.transform.SetParent(transform, false);
                _sightTrigger = obj.AddComponent <SphereCollider>();
            }

            _sightTrigger.isTrigger = true;
            _sightTrigger.radius    = config.viewingDistance;
            _sightTrigger.GetOrAddComponent <ObserverTriggerHelperBehaviour>();
            var r = _sightTrigger.GetOrAddComponent <Rigidbody>();

            r.useGravity  = false;
            r.isKinematic = true;

            if (LosManager.instance.settings != null)
            {
                _sightTrigger.gameObject.layer = LosManager.instance.settings.sightLayerID;
            }
            else
            {
                DevdogLogger.LogWarning("Settings database not set on LosManager");
            }
        }
コード例 #2
0
        public virtual void InitSightTrigger()
        {
            _sightTrigger           = GetOrCreateSightTrigger();
            _sightTrigger.isTrigger = true;
            _sightTrigger.radius    = config.viewingDistance;
            _sightTrigger.GetOrAddComponent <ObserverTriggerHelperBehaviour>();
            var r = _sightTrigger.GetOrAddComponent <Rigidbody>();

            r.useGravity  = false;
            r.isKinematic = true;

            if (LosManager.instance.settings != null)
            {
                _sightTrigger.gameObject.layer = LosManager.instance.settings.sightLayerID;
            }
            else
            {
                DevdogLogger.LogWarning("Settings database not set on LosManager");
            }
        }