Exemple #1
0
    /// <summary>
    /// Adds a UnusualObjectUI to the display based on the passed in UnusualObjectSettings.
    /// </summary>
    /// <param name="unusualObject">The object to add to the UI display.</param>
    public void AddTrialObject(BasicTrialManager.UnusualObjectSettings unusualObject)
    {
        if (UnusualObjectList == null)
        {
            UnusualObjectList = new List <UnusualObjectUI> ();
        }
        UnusualObjectUI unusualUI = GameObject.Instantiate <UnusualObjectUI> (UnusualObjectUIPrefab);

        unusualUI.InitializeUI(this, unusualObject);
        unusualUI.GetComponent <RectTransform> ().SetParent(ObjectDisplayLayout.transform, false);
        UnusualObjectList.Add(unusualUI);
    }
    /// <summary>
    /// Sets the UI to display the passed in UnusualObjectSettings.
    /// </summary>
    /// <param name="settings">The settings to display.</param>
    public void SetUI(BasicTrialManager.UnusualObjectSettings settings)
    {
        Speed.text     = settings.Speed.ToString();
        Scale.text     = settings.Scale.ToString();
        SpawnTime.text = settings.SpawnTime.ToString();
        ColorPicker.SetJSONColor(settings.Color);
        Shape.value = (int)settings.Shape;
        Path.value  = (int)settings.Path;

        SetPreviewColor();
        SetPreviewImage();
    }
    /// <summary>
    /// Retrieves the UnuualObjetSettings as displayed in the UI.
    /// </summary>
    /// <returns>An UnusualObjectSettings filled by the UI.</returns>
    public BasicTrialManager.UnusualObjectSettings GetSettings()
    {
        BasicTrialManager.UnusualObjectSettings settings = new BasicTrialManager.UnusualObjectSettings
        {
            Speed     = float.Parse(Speed.text),
            Scale     = float.Parse(Scale.text),
            SpawnTime = float.Parse(SpawnTime.text),
            Color     = ColorPicker.GetJSONColor(),
            Shape     = (UnusualObject.ObjectShapes)Shape.value,
            Path      = (UnusualObject.ObjectPaths)Path.value
        };

        return(settings);
    }
Exemple #4
0
    /// <summary>
    /// Sets the settings of the object.
    /// </summary>
    /// <param name="settings">The UnusualObjectSettings to use.</param>
    /// <param name="camera">The camera to use to determine spawn position.</param>
    public void SetObjectSettings(BasicTrialManager.UnusualObjectSettings settings, Camera camera)
    {
        Settings = settings;
        float screenAspect = (float)Screen.width / (float)Screen.height;
        float cameraHeight = camera.orthographicSize * 2;

        CameraBounds = new Bounds(camera.transform.position, new Vector3(cameraHeight * screenAspect, cameraHeight, 0));

        SpriteRenderer = GetComponent <SpriteRenderer> ();
        Rigidbody2D    = GetComponent <Rigidbody2D> ();

        SpriteRenderer.sprite = GetObjectSprite(settings.Shape);
        SpriteRenderer.color  = settings.Color.GetColor();

        float objectScale = BASE_SIZE / SpriteRenderer.sprite.rect.width;

        transform.localScale = new Vector3(objectScale, objectScale, 1) * Settings.Scale;

        SetBasicSpeedAndPosition(cameraHeight, screenAspect);
    }
 /// <summary>
 /// Initializes the UI with settings and the BasicTrialObjectDesignUI parent.
 /// </summary>
 /// <param name="parent">The parent UI displaying this UI.</param>
 /// <param name="settings">The Settings to initialize this display with.</param>
 public void InitializeUI(BasicTrialObjectDesignUI parent, BasicTrialManager.UnusualObjectSettings settings)
 {
     RemoveButton.onClick.AddListener(delegate { parent.RemoveTrialObject(this); });
     SetUI(settings);
 }