Quantcast
Channel: Questions in topic: "error"
Viewing all articles
Browse latest Browse all 7934

Error C # script FloatingText in Unity.

$
0
0
Salve a tutti! Sto lavorando ad un progetto 2d platform. Ho due script in C# col nome FloatingText e PointStar. Sulla console mi da 2 errori. 1° errore al numero 12, sullo script FloatingText con scritto questo: NullReferenceException: Object reference not set to an instance of an object FloatingText.Show (System.String text, System.String style, IFloatingTextPositioner positioner) (at Assets/x ninja/CSharp Script/FloatingText.cs:12) PointStar.OnTriggerEnter2D (UnityEngine.Collider2D other) (at Assets/x ninja/CSharp Script/PointStar.cs:29) using UnityEngine; using System.Collections; public class FloatingText : MonoBehaviour { private static readonly GUISkin Skin = Resources.Load("GameSkin"); public static FloatingText Show(string text, string style, IFloatingTextPositioner positioner) { var go = new GameObject("Floating Text"); var floatingText = go.AddComponent(); floatingText.Style = Skin.GetStyle(style); floatingText._positioner = positioner; floatingText._content = new GUIContent(text); return floatingText; } private GUIContent _content; private IFloatingTextPositioner _positioner; public string Text { get { return _content.text; } set { _content.text = value; }} public GUIStyle Style { get; set; } public void OnGUI () { var position = new Vector2(); var contentSize = Style.CalcSize(_content); if (!_positioner.GetPosition(ref position, _content, contentSize)) { Destroy(gameObject); return; } GUI.Label(new Rect(position.x, position.y, contentSize.x, contentSize.y), _content, Style); } } I put the script where IFloatingTextPositioner assigns an error. using UnityEngine; using System.Collections; public interface IFloatingTextPositioner { bool GetPosition(ref Vector2 position, GUIContent content, Vector2 size); } I post also the script PointStar at number 29 gives an error. using UnityEngine; using System.Collections; public class PointStar : MonoBehaviour, IPlayerRespawnListener { public GameObject Effect; public int PointsToAdd = 10; public AudioClip HitStarSound; public Animator Animator; public SpriteRenderer Renderer; private bool _isCollected; public void OnTriggerEnter2D(Collider2D other) { if (_isCollected) return; if (other.GetComponent() == null) return; if (HitStarSound != null) AudioSource.PlayClipAtPoint(HitStarSound, transform.position); GameManager.Instance.AddPoints(PointsToAdd); Instantiate(Effect, transform.position, transform.rotation); FloatingText.Show(string.Format("+{0}!", PointsToAdd), "PointStarText", new FromWorldPointTextPositioner(Camera.main, transform.position, 1.5f, 50)); _isCollected = true; Animator.SetTrigger("Collect"); } public void FinishAnimationEvent() { Renderer.enabled = false; Animator.SetTrigger("Reset"); } public void OnPlayerRespawnInThisCheckpoint(Checkpoint checkpoint, Player player) { _isCollected = false; Renderer.enabled = true; } } 2nd error at number 27, again on the script FloatingText, saying this: NullReferenceException: Object reference not set to an instance of an object FloatingText.OnGUI () (at Assets / x ninja / CSharp Script / FloatingText.cs: 27) Thank You.

Viewing all articles
Browse latest Browse all 7934


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>