Esempio n. 1
0
    // ロード時に実行
    void Start()
    {
        g_Player       = GameObject.Find("Player");
        g_SpriteChange = g_Player.GetComponent <SpriteChange>();

        g_IconDirector = GameObject.Find("IconDirector");
        id_Director    = g_IconDirector.GetComponent <IconDirector>();

        g_Transform = GameObject.Find("TransformDirector");
        td_Script   = g_Transform.GetComponent <TransformationDirector>();

        g_SE      = GameObject.Find("ConsteSE");
        as_Source = g_SE.GetComponent <AudioSource>();

        for (int i = 0; i < g_Constellation.Count; i++)
        {
            g_Constellation[i].SetActive(false);

            if (i >= (int)AbilityKey.Max)
            {
                continue;
            }
            f_Timer[i]         = 0.0f;
            b_Ability[i]       = false;
            n_Status[i]        = (int)ConstellationState.None;
            n_RecoveryState[i] = n_Status[i];
        }

        n_NowStatus = (int)ConstellationState.None;

        SetSpan();
    }
 private void ChangeSprite(SpriteChange spr)
 {
     if (!spr.IsScreaming)
     {
         SoundManager.Instance.EnemyScream();
         spr.ChangeSpriteScream();
     }
 }
Esempio n. 3
0
    private IEnumerator GrowTreeAndDropItem(GameObject obj)
    {
        SpriteChange spriteChange = obj.GetComponent <SpriteChange>();
        int          waitRounds   = spriteChange.sprites.Length;

        // wait for a few rounds and grow tree
        for (int i = 0; i < waitRounds; i++)
        {
            if (spriteChange)
            {
                spriteChange.SpriteIndex++;
            }
            yield return(new WaitForSeconds(spawnDelay));

            if (obj == null)
            {
                yield break;
            }
        }

        // drop item
        List <Vector2> positions = new List <Vector2>();

        for (int x = -1; x <= 1; x++)
        {
            for (int y = -1; y <= 1; y++)
            {
                Vector2    position = (Vector2)obj.transform.position + new Vector2(x, y);
                Collider2D occupied = Physics2D.OverlapPoint(position);
                if (!occupied)
                {
                    positions.Add(position);
                }
            }
        }
        Vector2    itemPosition = positions[Random.Range(0, positions.Count)];
        GameObject item         = items[Random.Range(0, items.Length)];
        GameObject spawned      = Instantiate(item, itemPosition, Quaternion.identity);

        spawned.transform.SetParent(gameObject.transform);
    }
        public void MergeInto(SpriteChange spriteChange, bool pool = false)
        {
            if (spriteChange.PresentSpriteSet != -1)
            {
                if (Empty)
                {
                    Empty = false;
                }
                PresentSpriteSet = spriteChange.PresentSpriteSet;
            }

            if (spriteChange.VariantIndex != -1)
            {
                VariantIndex = spriteChange.VariantIndex;
            }

            if (spriteChange.CataloguePage != -1)
            {
                CataloguePage = spriteChange.CataloguePage;
            }

            if (spriteChange.PushTexture)
            {
                if (PushClear)
                {
                    PushClear = false;
                }
                PushTexture = spriteChange.PushTexture;
            }

            if (spriteChange.Empty)
            {
                if (PresentSpriteSet != -1)
                {
                    PresentSpriteSet = -1;
                }
                Empty = spriteChange.Empty;
            }

            if (spriteChange.ClearPallet)
            {
                if (Pallet != null)
                {
                    Pallet = null;
                }
                ClearPallet = spriteChange.ClearPallet;
            }

            if (spriteChange.PushClear)
            {
                if (PushTexture)
                {
                    PushTexture = false;
                }
                PushClear = spriteChange.PushClear;
            }

            if (spriteChange.SetColour != null)
            {
                SetColour = spriteChange.SetColour;
            }

            if (spriteChange.Pallet != null)
            {
                if (ClearPallet)
                {
                    ClearPallet = false;
                }
                Pallet = spriteChange.Pallet;
            }

            if (pool)
            {
                PooledSpriteChange.Add(spriteChange);
            }
        }
Esempio n. 5
0
 // Start is called before the first frame update
 void Start()
 {
     an_Change = g_Transformation.GetComponent <Animator>();
     sc_Script = g_Transformation.GetComponent <SpriteChange>();
     g_Transformation.SetActive(false);
 }