private void ApplyScaling()
        {
            if (!HostilitySettings.ApplyScaling)
            {
                return;
            }

            WarcraftCamera warcraftCamera = cameraReference.WarcraftCamera;

            if (warcraftCamera != null)
            {
                Vector3 direction = transform.position - warcraftCamera.transform.position;
                float   distance  = Vector3.Dot(direction, warcraftCamera.transform.forward);

                transform.rotation = Quaternion.LookRotation(warcraftCamera.transform.forward);
                contentFrame.transform.localScale = Vector3.one * nameplateSettings.ScaleOverDistance.Evaluate(distance);
            }
        }
Exemple #2
0
        public bool DoUpdate(float deltaTime)
        {
            currentLifeTime += deltaTime;

            transform.localScale = Vector3.one * currentSettings.SizeOverTime.Evaluate(currentLifeTime);
            transform.Translate(Vector3.up * currentSettings.FloatingSpeed * deltaTime);

            WarcraftCamera warcraftCamera = cameraReference.WarcraftCamera;

            if (warcraftCamera != null)
            {
                Vector3 direction = transform.position - warcraftCamera.transform.position;
                float   distance  = Vector3.Dot(direction, warcraftCamera.transform.forward);

                transform.rotation    = Quaternion.LookRotation(warcraftCamera.transform.forward);
                transform.localScale *= currentSettings.SizeOverDistanceToCamera.Evaluate(distance);
            }

            textMesh.alpha = currentSettings.AlphaOverTime.Evaluate(currentLifeTime);
            return(currentLifeTime >= targetLifeTime);
        }
Exemple #3
0
        private void SetText(FloatingTextSettings newSettings, string value)
        {
            currentSettings             = newSettings;
            textMesh.text               = value;
            textMesh.fontSharedMaterial = newSettings.FontMaterial;
            textMesh.fontSize           = currentSettings.FontSize;
            textMesh.color              = currentSettings.FontColor;
            targetLifeTime              = currentSettings.LifeTime;
            transform.localScale        = Vector3.one;
            currentLifeTime             = 0;

            WarcraftCamera warcraftCamera = cameraReference.WarcraftCamera;

            if (warcraftCamera != null)
            {
                Vector3 direction = transform.position - warcraftCamera.transform.position;
                float   distance  = Vector3.Dot(direction, warcraftCamera.transform.forward);
                transform.position += Random.insideUnitSphere * currentSettings.RandomOffset * currentSettings.RandomOffsetOverDistance.Evaluate(distance);
            }
            else
            {
                transform.position += Random.insideUnitSphere * currentSettings.RandomOffset;
            }
        }
Exemple #4
0
        protected override void OnUnregister()
        {
            WarcraftCamera = null;

            base.OnUnregister();
        }
Exemple #5
0
        protected override void OnRegistered()
        {
            base.OnRegistered();

            WarcraftCamera = FindObjectOfType <WarcraftCamera>();
        }