示例#1
0
    public void Personality_SavedCount()
    {
        var person = new GameObject().AddComponent <Personality> ();

        person.Save();

        Assert.AreEqual(1, Personality.SavedCount());
    }
示例#2
0
    public IEnumerator Personality_NoInterval_NoSave()
    {
        new GameObject().AddComponent <Personality> ();

        yield return(new WaitForSeconds(0.6f));

        Assert.AreEqual(0, Personality.SavedCount());
    }
示例#3
0
    public IEnumerator Personality_SaveAtIntervals()
    {
        var person = new GameObject().AddComponent <Personality> ();

        person.saveInterval = 0.5f;

        yield return(new WaitForSeconds(0.6f));

        Assert.AreEqual(1, Personality.SavedCount());
    }
示例#4
0
    // Update is called once per frame
    void Update()
    {
        if (_timeSinceLast >= interval)
        {
            if (Personality.SavedCount() > 0)
            {
                var prefab = Resources.Load("Prefabs/Character");

                var pos = new Vector3(
                    Random.Range(minPos.x, maxPos.x),
                    Random.Range(minPos.y, maxPos.y),
                    0
                    );

                var character = Instantiate(prefab, pos, Quaternion.identity) as GameObject;
                character.GetComponent <Personality> ().Load();

                _timeSinceLast = 0f;
            }
        }

        _timeSinceLast += Time.deltaTime;
    }