コード例 #1
0
 public void NorticeDirtyWash(DirtyObjectScript dirty)
 {
     //if (IsOutScreen(dirty.transform.position))
     {
         Vector3 screenPosition = TransVewportPosition(dirty.transform.position);
         float   x = Random.Range(0.0f, 2.0f);
         float   y = Random.Range(0.0f, 2.0f);
         float   z = Random.Range(0.0f, 2.0f);
         m_image.color = dirty.MyColor;
         GameObject newImage = Instantiate(m_imageSample, screenPosition, new Quaternion(0, 0, z, 1)) as GameObject;
         newImage.transform.parent = this.transform;
         newImage.GetComponent <Image>().material = Resources.Load("Material/DirtyWashUI") as Material;
     }
 }
コード例 #2
0
    public void NoticeDestroy(DirtyObjectScript dirty)
    {
        if (m_dirtyWashUI)
        {
            m_dirtyWashUI.NorticeDirtyWash(dirty);
        }
        if (m_washChainUI)
        {
            m_washChainUI.GetWash();
        }
        if (m_washGaugeUI)
        {
            m_washGaugeUI.GetWash();
        }

        ParntDirtySystem.NoticeDestroyToSystem(this);
        isMyDityDestroy = true;
    }
コード例 #3
0
 public void NoticeDestroy(DirtyObjectScript dirty)
 {
     MyCreater.NoticeDestroy(dirty);
 }
コード例 #4
0
    // Update is called once per frame
    void Update()
    {
        // フラグが立ってるなら汚れ作る
        if (IsCreate)
        {
            for (int i = 0; i < CreateNumber; i++)
            {
                Vector3 pos = new Vector3();
                switch (m_type)
                {
                case AppearanceType.CIRCLE:
                    pos    = new Vector3(Mathf.Cos(Mathf.Deg2Rad * i * 360.0f / (float)CreateNumber), Mathf.Sin(Mathf.Deg2Rad * i * 360.0f / (float)CreateNumber), 0);
                    pos.x *= createRange.x;
                    pos.y *= createRange.y;
                    pos    = transform.rotation * pos;
                    break;

                case AppearanceType.LINE:
                    pos   = new Vector3(0, 0, 0);
                    pos.y = createRange.y * i;
                    pos   = transform.rotation * pos;
                    break;

                case DirtyApparancePosition.AppearanceType.CURVE:
                    pos   = new Vector3(m_curveX.Evaluate(1.0f / (createNumber - 1) * i) * createRange.x, 0, 0);
                    pos.y = m_curveY.Evaluate(1.0f / (createNumber - 1) * i) * createRange.y;
                    pos   = transform.rotation * pos;
                    break;

                default:
                    break;
                }

                // 消されたオブジェクトは新たに作る
                if (dirtyObjectInstance[i] == null)
                {
                    if (m_isReality)
                    {
                        if (GameObject.Find("MainState").GetComponent <MainSceneStateHolder>().m_modeState == MainSceneStateHolder.ModeState.FREE_PLAY)
                        {
                            return;
                        }
                    }
                    dirtyObjectInstance[i] = ((GameObject)Instantiate(dirtyObject, pos + transform.position, transform.rotation)).GetComponent <DirtyObjectScript>();

                    // 親子関係的なものを構築
                    DirtyObjectScript obj = dirtyObjectInstance[i].GetComponent <DirtyObjectScript>();
                    dirtyObjectInstance[i].transform.parent = this.transform;
                    obj.MyPoint        = this;                // 汚れスクリプトに自分を伝える
                    isMyDityDestroy[i] = false;
                    obj.Player         = Player;
                    if (m_isReality)
                    {
                        obj.Reality = true;
                    }
                    obj.SwitchMaterial((int)Random.Range(0, 7), affiliationArea);
                }
            }
            isCreate = false;
        }
    }