示例#1
0
    public override void ShowAnimation(IModelShow model)
    {
        switch (model.State)
        {
        case ModelState.None:
            model.State = ModelState.State1;

            break;

        case ModelState.State1:
            info1.SetActive(true);
            info2.SetActive(false);
            //model.State = ModelState.State2;
            model.State  = ModelState.None;
            HasNextState = false;
            break;

        case ModelState.State2:
            info1.SetActive(false);
            info2.SetActive(true);
            model.State  = ModelState.None;
            HasNextState = false;
            break;

        case ModelState.Stop:
            break;

        default:
            break;
        }
    }
示例#2
0
    void ShowHandle()
    {
        if (ModelShow != null & ModelShow.gameObject.activeSelf)
        {
            if (tempPos != ModelShow.transform.position)
            {
                tempPos = ModelShow.transform.position;
                Debug.Log(ModelShow.gameObject.name + " " + ModelShow.transform.position);
            }

            if (Input.GetKeyUp(KeyCode.JoystickButton0) ||
                Input.GetKeyUp(KeyCode.Return) ||
                Input.GetKeyUp(KeyCode.KeypadEnter) ||
                (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began) ||
                Input.GetMouseButtonDown(0))
            {
                play = !ModelShow.HasNextState;
                if (play)
                {
                    index++;
                    if (index >= modelPanel.modelArray.Count)
                    {
                        index = 0;
                        //Application.Quit();
                    }
                    ModelShow.NextModelShow(modelPanel.modelArray[index], EYE);
                    ModelShow = modelPanel.modelArray[index];
                }
                else
                {
                    ModelShow.ShowAnimation(ModelShow);
                }
            }
        }
    }
示例#3
0
 public override void NextModelShow(IModelShow model, Transform trs)
 {
     info1.SetActive(false);
     info2.SetActive(false);
     base.NextModelShow(model, trs);
     HasNextState = true;
 }
示例#4
0
    public override void ShowAnimation(IModelShow model)
    {
        switch (model.State)
        {
        case ModelState.None:
            model.State    = ModelState.State1;
            Satellite.Play = true;
            break;

        case ModelState.State1:
            model.State    = ModelState.None;
            Satellite.Play = false;
            break;

        case ModelState.State2:
            break;

        case ModelState.Stop:
            break;

        default:
            break;
        }

        if (ShowAnimationHandler != null)
        {
            ShowAnimationHandler();
        }
    }
示例#5
0
    public override void ShowAnimation(IModelShow model)
    {
        switch (model.State)
        {
        case ModelState.None:
            model.State  = ModelState.State2;
            HasNextState = false;
            break;

        case ModelState.State1:
            model.State = ModelState.State2;
            break;

        case ModelState.State2:
            model.State = ModelState.State1;

            break;

        case ModelState.Stop:
            break;

        default:
            break;
        }
    }
示例#6
0
    public override void ShowAnimation(IModelShow model)
    {
        switch (model.State)
        {
        case ModelState.None:
            EngineAnimaotr.SetBool("Play", true);
            model.State  = ModelState.State1;
            HasNextState = false;
            break;

        case ModelState.State1:
            EngineAnimaotr.SetBool("Play", false);
            model.State = ModelState.None;
            break;

        case ModelState.State2:
            break;

        case ModelState.Stop:
            break;

        default:
            break;
        }
    }
示例#7
0
    public virtual void NextModelShow(IModelShow model, Transform trs)
    {
        RenderShow(false);
        model.Show(trs);

        StartCoroutine(ModelScalChange(Vector3.one, model));
    }
示例#8
0
    public override void NextModelShow(IModelShow model, Transform trs)
    {
        HasNextState = true;
        Nervous_System.localPosition = Vector3.zero;
        CardioVascular.localPosition = Vector3.zero;


        base.NextModelShow(model, trs);
        State = ModelState.None;
    }
示例#9
0
    IEnumerator ModelScalChange(Vector3 scal, IModelShow model)
    {
        model.transform.localScale = Vector3.zero;
        float dis = Vector3.Distance(model.transform.localScale, scal);

        while (dis > 0.02f)
        {
            model.transform.localScale += new Vector3(scal.x - model.transform.localScale.x, scal.y - model.transform.localScale.y, scal.z - model.transform.localScale.z) * 0.1f;
            //model.transform.localScale = Vector3.Lerp(model.transform.localScale,scal,Time.fixedDeltaTime*1.5f);
            dis = Vector3.Distance(model.transform.localScale, scal);
            yield return(new WaitForFixedUpdate());
        }
    }
示例#10
0
 void Init()
 {
     if (modelPanel.modelArray[index] != null)
     {
         ModelShow = modelPanel.modelArray[index];
         if (!ModelShow.gameObject.activeSelf)
         {
             ModelShow.gameObject.SetActive(true);
         }
         ModelShow.NextModelShow(ModelShow, EYE);
     }
     else
     {
         Debug.LogError("ModelShow Is Null");
     }
 }
示例#11
0
 public override void NextModelShow(IModelShow model, Transform trs)
 {
     base.NextModelShow(model, trs);
 }
示例#12
0
 public override void NextModelShow(IModelShow model, Transform tra)
 {
     HasNextState = true;
     EngineAnimaotr.SetBool("Play", false);
     base.NextModelShow(model, tra);
 }
示例#13
0
 public override void NextModelShow(IModelShow model, Transform trs)
 {
     Satellite.Play = false;
     base.NextModelShow(model, trs);
 }
示例#14
0
 public abstract void ShowAnimation(IModelShow model);