Пример #1
0
    void Update()
    {
        if (isMove)
        {
            if (_dir == eDIR.LEFT)
            {
                gameObject.transform.localPosition = new Vector3(gameObject.transform.localPosition.x - (Time.deltaTime * speed), gameObject.transform.localPosition.y, gameObject.transform.localPosition.z);
            }
            else
            {
                gameObject.transform.localPosition = new Vector3(gameObject.transform.localPosition.x + (Time.deltaTime * speed), gameObject.transform.localPosition.y, gameObject.transform.localPosition.z);              //gameObject.transform.localPosition = new Vector3(gameObject.transform.localPosition.x + speed,prevPos.y,prevPos.z);
            }

            if (gameObject.transform.localPosition.x < prevPos.x - maxMove)
            {
                _dir = eDIR.RIGHT;
                setFlip(_dir);
            }
            else if (gameObject.transform.localPosition.x > prevPos.x + maxMove)
            {
                _dir = eDIR.LEFT;
                setFlip(_dir);
            }
        }
        else
        {
        }
    }
Пример #2
0
 void Update()
 {
     if (_dir == eDIR.DOWN)
     {
         if (pos.y - gameObject.transform.localPosition.y > gameObject.transform.localScale.y)
         {
             _dir = eDIR.UP;
         }
         else
         {
             gameObject.transform.localPosition = new Vector3(pos.x, gameObject.transform.localPosition.y - (downSpeed * Time.deltaTime), pos.z);
         }
     }
     else if (_dir == eDIR.UP)
     {
         if (pos.y - gameObject.transform.localPosition.y < -gameObject.transform.localScale.y)
         {
             _dir = eDIR.DOWN;
         }
         else
         {
             gameObject.transform.localPosition = new Vector3(pos.x, gameObject.transform.localPosition.y + (downSpeed * Time.deltaTime), pos.z);
         }
     }
     else if (_dir == eDIR.WAIT)
     {
     }
 }
Пример #3
0
    void Update()
    {
        transform.Rotate(0, rotationSpeed * Time.deltaTime, 0);
        if (eat)
        {
            tk2dSprite sp = GetComponent <tk2dSprite>();
            sp.color  = new Color(1, 1, 1, alphaNum);
            alphaNum -= 0.025f;
            if (posY + 0.25 < transform.localPosition.y)
            {
                _dir = eDIR.DOWN;
            }

            if (posY - 0.15 > transform.localPosition.y)
            {
                Destroy(gameObject);
                GameMenneger.instance.getCoins();
            }

            if (_dir == eDIR.UP)
            {
                transform.localPosition = new Vector3(transform.localPosition.x, transform.localPosition.y + (upSpeed / 2 * Time.deltaTime), transform.localPosition.z);
            }
            else if (_dir == eDIR.DOWN)
            {
                transform.localPosition = new Vector3(transform.localPosition.x, transform.localPosition.y - (upSpeed * Time.deltaTime), transform.localPosition.z);
            }
        }
    }
Пример #4
0
    void setFlip(eDIR dir)
    {
        _dir = dir;
        tk2dSprite spr = GetComponent <tk2dSprite>();

        if (dir == eDIR.LEFT)
        {
            spr.scale = new Vector3((Mathf.Abs(spr.scale.x)), spr.scale.y, spr.scale.z);
        }
        else
        {
            spr.scale = new Vector3((-Mathf.Abs(spr.scale.x)), spr.scale.y, spr.scale.z);
        }
    }
Пример #5
0
    void SetFlip(eDIR dir)
    {
        dir_ = dir;
        tk2dSprite spr = GetComponent <tk2dSprite>();

        if (dir == eDIR.LEFT)
        {
            spr.scale = new Vector3(-Mathf.Abs(spr.scale.x), spr.scale.y, spr.scale.z);
            GameMenneger.instance._dir = GameMenneger.eDIR.LEFT;
        }
        else if (dir == eDIR.RIGHT)
        {
            spr.scale = new Vector3(Mathf.Abs(spr.scale.x), spr.scale.y, spr.scale.z);
            GameMenneger.instance._dir = GameMenneger.eDIR.RIGHT;
        }
    }
Пример #6
0
    void Update()
    {
        CharacterController controller = GetComponent <CharacterController>();
        string clipName;

        if (isSuper)
        {
            clipName = "Sidle";
            if (isFire)
            {
                clipName = "Fidle";
            }
        }
        else
        {
            clipName = "idle";
        }
        bool isLand = controller.isGrounded;
        eDIR dir    = dir_;

        bool           move = false;
        FollowCamera2D fc   = GetComponent <FollowCamera2D>();

        if (velocity_.x < 0f)
        {
            Vector3 newPos = transform.position;
            if (newPos.x < -1.4f)
            {
                newPos.x = -1.4f;
            }
            transform.position = newPos;
            dir  = eDIR.LEFT;
            move = true;
        }
        else if (velocity_.x > 0f)
        {
            Vector3 newPos = transform.position;
            if (fc && newPos.x > 1.4f + fc.scrollWidth)
            {
                newPos.x = 1.4f + fc.scrollWidth;
            }
            transform.position = newPos;

            dir  = eDIR.RIGHT;
            move = true;
        }
        if (!isFinish)        //---------------------------------------------------------------- STAGE UNFINISHED;
        {
            if (superMode)
            {
                if (sp.color.a >= 1)
                {
                    isSuperModeColor = false;
                }
                else if (sp.color.a <= .5f)
                {
                    isSuperModeColor = true;
                }
                if (isSuperModeColor)
                {
                    sp.color = new Color(1, 1, 1, sp.color.a + .1f * Mathf.Ceil(Time.deltaTime));
                }
                else
                {
                    sp.color = new Color(1, 1, 1, sp.color.a - .1f * Mathf.Ceil(Time.deltaTime));
                }
            }
            else
            {
                isSuperModeColor = false;
                sp.color         = new Color(1, 1, 1, 1);
            }
            if (!isDie)
            {
                velocity_.x = Input.GetAxis("Horizontal") * accel_;
            }
            if (!isLand)
            {
                velocity_.y -= gravity * Time.deltaTime;
            }

            if (isLand)
            {
                if (Input.GetKeyDown(KeyCode.X))
                {
                    velocity_.y = jumpSpeed + accel_ * 0.5f;
                }
                blockHitFlag = true;
            }
            else
            {
                if (isSuper)
                {
                    clipName = "Sjump";
                    if (isFire)
                    {
                        clipName = "Fjump";
                    }
                }
                else
                {
                    clipName = "jump";
                }

                if (Input.GetKeyUp(KeyCode.X))
                {
                    velocity_.y -= 1f;
                }
            }
            if (isFire)            //-----------------------------------------------------fire!!!!!!
            {
                if (Input.GetKeyDown(KeyCode.Z))
                {
                    if (isFireBallDelay)
                    {
                        float posX;
                        if (dir_ == eDIR.LEFT)
                        {
                            posX = transform.localPosition.x - 0.18f;
                        }
                        else
                        {
                            posX = transform.localPosition.x + 0.18f;
                        }
                        Instantiate(fireBall, new Vector3(posX, transform.localPosition.y + 0.13f, transform.localPosition.z), Quaternion.identity);
                        isFireBallDelay = false;
                        StartCoroutine("onFire", fireDelayNum);
                    }
                }
            }

            if (move)
            {
                if (isLand)
                {
                    if (Input.GetKey(KeyCode.Z))
                    {
                        if (isSuper)
                        {
                            clipName = "Srun";
                            if (isFire)
                            {
                                clipName = "Frun";
                            }
                        }
                        else
                        {
                            clipName = "run";
                        }

                        accel_ += 0.03f;
                        if (accel_ > 2.5f)
                        {
                            accel_ = 2.5f;
                        }
                    }
                    else
                    {
                        if (isSuper)
                        {
                            clipName = "Swalk";
                            if (isFire)
                            {
                                clipName = "Fwalk";
                            }
                        }

                        else
                        {
                            clipName = "walk";
                        }
                        accel_ = 1f;
                    }
                }
            }
            if (!isDie)
            {
                controller.Move(velocity_ * Time.deltaTime);
            }
            if (dir != dir_)
            {
                SetFlip(dir);
                accel_ = 1f;
            }

            if (!isDie)
            {
                if (clipName != clipName_)
                {
                    SetClip(clipName);
                }
            }
        }
        else           //---------------------------------------------------------------- STAGE FINISHED;
        {
            if (!isLand)
            {
                velocity_.y -= gravity * Time.deltaTime;
            }
            else
            {
                if (isSuper)
                {
                    clipName = "Swalk";
                    if (isFire)
                    {
                        clipName = "Fwalk";
                    }
                }
                else
                {
                    clipName = "walk";
                }
                SetClip(clipName);
                accel_      = .5f;
                velocity_.x = accel_;
                finishObject.collider.enabled = false;
            }

            if (!GameMenneger.instance._stageComplete)
            {
                controller.Move(velocity_ * Time.deltaTime);
            }
            else
            {
                if (isSuper)
                {
                    clipName = "Sidle";
                    if (isFire)
                    {
                        clipName = "Fidle";
                    }
                }
                else
                {
                    clipName = "idle";
                }
                SetClip(clipName);
                if (sp.color.a < 0)
                {
                    //Debug.Log("next Stage");
                }
                else
                {
                    sp.color = new Color(1, 1, 1, sp.color.a - .05f * Mathf.Ceil(Time.deltaTime));
                }
            }
        }

        if (isBounce)
        {
            isBounce     = false;
            velocity_.y  = 0f;
            velocity_.y -= 1f;
        }

        if (isRiversBounce)
        {
            isRiversBounce = false;
            velocity_.y    = 0f;
            velocity_.y   += 1.5f;
        }

        if (isDie)
        {
            StartCoroutine("playerDelayDieMotion", .3f);
            if (isPlayerDelayDieMotion)
            {
                if (!isPlayerDown)
                {
                    Vector3 pos = transform.localPosition;
                    pos.y += gravity / 2 * Time.deltaTime;
                    transform.localPosition = pos;
                }
            }
        }

        if (isPlayerDown)        //==========================player dir motion & enermy hit motion
        {
            isPlayerDelayDieMotion = false;
            Vector3 pos = transform.localPosition;
            pos.y -= gravity * Time.deltaTime;
            transform.localPosition = pos;
            GameMenneger.instance.setDie(true);
        }
        else if (transform.position.y < -0.9f)
        {
            chcon.collider.enabled = false;
            isDie          = true;
            isRiversBounce = true;
            tk2dSpriteAnimator ani = GetComponent <tk2dSpriteAnimator>();
            ani.Play("die");
            controller.collider.isTrigger = true;
            StartCoroutine("playerDown", .5f);
        }
    }