コード例 #1
0
    // Set the internal data with no transition
    public void SetTraitVariation(S.String trait, int variationID,
                                  Sprite sprite, bool isBlanco,
                                  bool noAnimation = false)
    {
        TraitOpts t = S.Array.Find(traits, x => x.name == trait);

        if (t.name != trait)
        {
            Debug.LogError("Trait " + trait + " does not exist", this);
        }

        StartCoroutine(Horrible(trait, t, variationID, sprite, isBlanco, noAnimation));
    }
コード例 #2
0
    private IEnumerator Horrible(S.String trait, TraitOpts t, int variationID,
                                 Sprite sprite, bool isBlanco,
                                 bool noAnimation)
    {
        if (trait == "poncho" && variationIds.ContainsKey(trait) && variationIds [trait] != variationID)
        {
            this.GetComponent <AudioSource> ().Play();
        }

        variationIds [trait] = variationID;
        isBlancos [trait]    = isBlanco;

        if (!noAnimation)
        {
            this.GetComponent <Animator> ().Play("Person - Change Poncho");
            yield return(new WaitForSeconds(1.37f * 1 / this.GetComponent <Animator> ().speed));
        }

        t.traitRenderer.sprite = sprite;
    }