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); } }
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); }
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; } }
protected override void OnUnregister() { WarcraftCamera = null; base.OnUnregister(); }
protected override void OnRegistered() { base.OnRegistered(); WarcraftCamera = FindObjectOfType <WarcraftCamera>(); }