Example #1
0
    // Update is called once per frame
    void Update()
    {
        //着火状態小炎
        if (status.GetIgnit() && status.GetFireSize() == 1)
        {
            GetComponent <Renderer>().material = smallFireMat;
            if (!smallFireParticle.GetComponentInChildren <ParticleSystem>().isEmitting)
            {
                smallFireParticle.GetComponentInChildren <ParticleSystem>().Play();
                fireParticle.GetComponentInChildren <ParticleSystem>().Stop();
                bigFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
            }
        }//中炎
        else if (status.GetIgnit() && status.GetFireSize() == 2)
        {
            GetComponent <Renderer>().material = fireMat;
            if (!fireParticle.GetComponentInChildren <ParticleSystem>().isEmitting)
            {
                fireParticle.GetComponentInChildren <ParticleSystem>().Play();
                smallFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
                bigFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
            }
        }//大炎
        else if (status.GetIgnit() && status.GetFireSize() == 3)
        {
            GetComponent <Renderer>().material = bigFireMat;
            if (!bigFireParticle.GetComponentInChildren <ParticleSystem>().isEmitting)
            {
                bigFireParticle.GetComponentInChildren <ParticleSystem>().Play();
                fireParticle.GetComponentInChildren <ParticleSystem>().Stop();
                smallFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
            }
        }
        //鎮火状態
        else
        {
            GetComponent <Renderer>().material = normalMat;
            fireParticle.GetComponentInChildren <ParticleSystem>().Stop();
            smallFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
            bigFireParticle.GetComponentInChildren <ParticleSystem>().Stop();
        }

        //カーソルあってるとき
        if (status.GetCursol())
        {
            GetComponent <Renderer>().material.color += cursolMat.color;
            status.SetCursol(false);
        }
    }
Example #2
0
    // Update is called once per frame
    void Update()
    {
        Ray        ray = new Ray();
        RaycastHit hit = new RaycastHit();

        ray = Camera.main.ScreenPointToRay(Input.mousePosition);

        if (Physics.Raycast(ray.origin, ray.direction, out hit, Mathf.Infinity))
        {
            GameObject obj = hit.collider.gameObject;


            if (obj.CompareTag(ignitTag))
            {
                IgnitStatus status = obj.GetComponent <IgnitStatus>();
                status.SetCursol(true);

                if (Input.GetMouseButtonDown(0) && status.GetFireSize() < MaxFireSize)
                {
                    status.PlusFireSize();
                    concent.MinusConcentration();
                }
                else if (Input.GetMouseButtonDown(1) && status.GetFireSize() != 0)
                {
                    status.MinusFireSize();
                    concent.PlusConcentration();
                }
                else if (Input.GetMouseButtonDown(2))
                {
                    for (int i = 0; i < status.GetFireSize(); i++)
                    {
                        concent.PlusConcentration();
                    }
                    status.SetFireSize(0);
                }
            }
        }
    }
Example #3
0
    // Update is called once per frame
    void Update()
    {
        if (flag)
        {
            if (ignitStatus.GetIgnit() && !audioSource.isPlaying)
            {
                audioSource.Play();
            }
            else if (!ignitStatus.GetIgnit())
            {
                audioSource.Stop();
            }
            return;
        }


        if (changeStateFire != ignitStatus.GetFireSize())
        {
            switch (ignitStatus.GetFireSize())
            {
            case 0:
                audioSource.Stop();
                audioSource.clip = stopFire;
                audioSource.PlayOneShot(stopFire, 1);
                break;

            case 1:
                if (audioSource.clip != fire1)
                {
                    audioSource.Stop();
                }
                audioSource.clip = fire1;
                break;

            case 2:
                if (audioSource.clip != fire2)
                {
                    audioSource.Stop();
                }
                audioSource.clip = fire2;
                break;

            case 3:
                if (audioSource.clip != fire3)
                {
                    audioSource.Stop();
                }
                audioSource.clip = fire3;
                break;

            default:
                break;
            }

            changeStateFire = ignitStatus.GetFireSize();
        }
        if (ignitStatus.GetIgnit() && !audioSource.isPlaying)
        {
            audioSource.Play();
        }
    }
Example #4
0
    void ShaScale()
    {
        //Shadow1が出現中
        if (Shadow1)
        {
            switch (IgnS.GetFireSize())
            {
            //小さく
            case 1:
                Shadow1.transform.localScale = new Vector3(ShadowSizeX / SizeDiv, ShadowSizeY / SizeDiv, ShadowSizeZ / SizeDiv);
                break;

            //標準
            case 2:
                Shadow1.transform.localScale = new Vector3(ShadowSizeX, ShadowSizeY, ShadowSizeZ);
                break;

            //倍
            case 3:
                Shadow1.transform.localScale = new Vector3(ShadowSizeX * SizeMul, ShadowSizeY * SizeMul, ShadowSizeZ * SizeMul);
                break;
            }
        }
        //Shadow2が出現中
        if (Shadow2)
        {
            switch (IgnS.GetFireSize())
            {
            //小さく
            case 1:
                Shadow2.transform.localScale = new Vector3(ShadowSizeX / SizeDiv, ShadowSizeY / SizeDiv, ShadowSizeZ / SizeDiv);
                break;

            //標準
            case 2:
                Shadow2.transform.localScale = new Vector3(ShadowSizeX, ShadowSizeY, ShadowSizeZ);
                break;

            //倍
            case 3:
                Shadow2.transform.localScale = new Vector3(ShadowSizeX * SizeMul, ShadowSizeY * SizeMul, ShadowSizeZ * SizeMul);
                break;
            }
        }
        //Shadow3が出現中
        if (Shadow3)
        {
            switch (IgnS.GetFireSize())
            {
            //小さく
            case 1:
                Shadow3.transform.localScale = new Vector3(ShadowSizeX / SizeDiv, ShadowSizeY / SizeDiv, ShadowSizeZ / SizeDiv);
                break;

            //標準
            case 2:
                Shadow3.transform.localScale = new Vector3(ShadowSizeX, ShadowSizeY, ShadowSizeZ);
                break;

            //倍
            case 3:
                Shadow3.transform.localScale = new Vector3(ShadowSizeX * SizeMul, ShadowSizeY * SizeMul, ShadowSizeZ * SizeMul);
                break;
            }
        }
        //Shadow4が出現中
        if (Shadow4)
        {
            switch (IgnS.GetFireSize())
            {
            //小さく
            case 1:
                Shadow4.transform.localScale = new Vector3(ShadowSizeX / SizeDiv, ShadowSizeY / SizeDiv, ShadowSizeZ / SizeDiv);
                break;

            //標準
            case 2:
                Shadow4.transform.localScale = new Vector3(ShadowSizeX, ShadowSizeY, ShadowSizeZ);
                break;

            //倍
            case 3:
                Shadow4.transform.localScale = new Vector3(ShadowSizeX * SizeMul, ShadowSizeY * SizeMul, ShadowSizeZ * SizeMul);
                break;
            }
        }
    }