Beispiel #1
0
 protected void Awake()
 {
     player           = GetComponent <TurnAround>();
     rBody            = GetComponent <Rigidbody2D>();
     floorDetector    = GetComponent <FloorDetector>();
     playerController = GetComponent <PlayerController>();
     audioManager     = FindObjectOfType <AudioManager>();
     turnAround       = GetComponent <TurnAround>();
     attackMovement   = GetComponent <AttackMovement>();
 }
Beispiel #2
0
 protected void Awake()
 {
     player              = GetComponent <PlayerController>();
     turnAround          = GetComponent <TurnAround>();
     floorDetector       = GetComponent <FloorDetector>();
     animator            = GetComponent <Animator>();
     startPos            = catchCollider.transform.localPosition;
     attackMovement      = GetComponent <AttackMovement>();
     walkMovement        = GetComponent <WalkMovement>();
     audioManager        = FindObjectOfType <AudioManager>();
     enableCatchMovement = true;
 }
Beispiel #3
0
 protected void Awake()
 {
     turnAround            = GetComponent <TurnAround>();
     audioManager          = FindObjectOfType <AudioManager>();
     screenShake           = FindObjectOfType <ScreenShake>();
     animator              = GetComponent <Animator>();
     floorDetector         = GetComponent <FloorDetector>();
     hurtEnemyOnContact    = FindObjectOfType <HurtEnemyOnContact>();
     walkMovement          = GetComponent <WalkMovement>();
     player                = GetComponent <PlayerController>();
     AttackMovementEnabled = true;
     attackTrigger.enabled = false;
 }
Beispiel #4
0
    // Use this for initialization
    void Start()
    {
        battleComponent = GetComponent <UIPanel>().ui;

        degreeTextField = battleComponent.GetChild("degreeTextField").asTextField;
        permTextField   = battleComponent.GetChild("permTextField").asTextField;//前进率,范围0-1
        turnXTextField  = battleComponent.GetChild("turnXTextField").asTextField;
        turnYTextField  = battleComponent.GetChild("turnYTextField").asTextField;

        //控制移动
        joystick = new Joystick(battleComponent);
        joystick.onMove.Add(JoystickOnMove);
        joystick.onEnd.Add(JoystickOnEnd);
        //控制转向
        turnAround = new TurnAround(battleComponent);
        turnAround.onEnd.Add(TurnAroundOnEnd);
        turnAround.onMove.Add(TurnAroundOnMove);
        //指南针
        compassList = battleComponent.GetChild("compassList").asList;
        compassList.SetVirtualAndLoop();

        compassList.itemRenderer = (int index, GObject obj) => { itemWidth = obj.asButton.width; };
        compassList.numItems     = 1;
        compassList.scrollPane.bouncebackEffect = false;

        /*  循环列表实现时会产生2个顺序排列的内容物,每个内容物里装有3个item
         *  每当视窗滑动至左边界时,将移动到第二个内容物首部继续滑动
         *  每当视窗滑动至右边界时,将移动到第一个内容物尾部继续滑动
         *  因为设计时可视宽为X,一个item宽为4X
         *  所以scrollPane.contentWidth=2*3*4X=24X
         *  设视窗底当前滑动位置X'
         *  滚动率perX=(X'-X)/23X
         *  因为每4个X为同一个item,将X'转换至一个item内
         *  Xi = X'%4
         *  设一个item头尾代表0°-360°
         *  则,degree = Xi * 360°/4
         */

        //compassList.scrollPane.onScroll.Add(()=> {
        //    battleComponent.GetChild("perXTextField").asTextField.text = "perX:" + compassList.scrollPane.percX;

        //});

        //将窗体滑至中部,避免从0开始向左滑动percX突变为0.52
        initRightPercX = ((compassList.scrollPane.contentWidth / 2 + compassList.width) - compassList.width) / (compassList.scrollPane.contentWidth - compassList.width);
        initLeftPercX  = ((compassList.scrollPane.contentWidth / 2) - compassList.width) / (compassList.scrollPane.contentWidth - compassList.width);
        lastPercX      = initRightPercX;
        compassList.scrollPane.SetPercX(initRightPercX, false);
    }
    public void OnTurnAround(TurnAround evt)
    {
        if (PlayerIndex != evt.PlayerIndex)
        {
            return;
        }

        RaycastHit2D hitCol = Physics2D.Raycast(transform.position, Vector2.left * direction, 20, opponentLayer);

        if (hitCol)
        {
            transform.Rotate(0f, 180f, 0f); //rotate the sprite
            direction *= -1;                //Flip the hitbox directions
        }
    }
Beispiel #6
0
    void OnGUI()
    {
        if (glow == null)
        {
            GameObject temp = GameObject.Find("Glowing");
            if (temp != null)
            {
                glow = temp;
            }
        }
        if (earth == null)
        {
            GameObject temp = GameObject.Find("Sphere");
            if (temp != null)
            {
                earth = temp;
            }
        }
        if (sun == null)
        {
            GameObject temp = GameObject.Find("Sun");
            if (temp != null)
            {
                sun = temp;
            }
        }
        GUI.Box(new Rect(10, 10, 220, 170), "Настройки эффектов");
        GUI.Box(new Rect(10, 190, 220, 200), "Инструкции");
        GUI.Label(new Rect(20, 240, 200, 40), "Левая кнопка мыши - вращение планеты");
        GUI.Label(new Rect(20, 280, 200, 40), "Колесико мыши - масштаб камеры");
        GUI.Label(new Rect(20, 320, 200, 40), "ESC - выход из программы");
        bool newToggle = GUI.Toggle(new Rect(20, 40, 180, 20), sound, "Звук");

        if (newToggle != sound)
        {
            sound = newToggle;
            if (sound)
            {
                AudioListener.pause = false;
            }
            else
            {
                AudioListener.pause = true;
            }
        }
        newToggle = GUI.Toggle(new Rect(20, 60, 180, 20), shining, "Свечение атмосферы");
        if (newToggle != shining)
        {
            shining = newToggle;
            if (shining)
            {
                glow.SetActive(true);
            }
            else
            {
                glow.SetActive(false);
            }
        }
        newToggle = GUI.Toggle(new Rect(20, 80, 180, 20), clouds, "Облака");
        if (newToggle != clouds)
        {
            clouds = newToggle;
            if (clouds)
            {
                earth.renderer.materials[1].SetFloat("_Visibility", 1);
            }
            else
            {
                earth.renderer.materials[1].SetFloat("_Visibility", 0);
            }
        }
        newToggle = GUI.Toggle(new Rect(20, 100, 180, 20), dirtyCamera, "Грязная камера");
        if (newToggle != dirtyCamera)
        {
            dirtyCamera = newToggle;
            if (dirtyCamera)
            {
                glareFxClassic flare = GetComponent <glareFxClassic>();
                flare.enabled = true;
            }
            else
            {
                glareFxClassic flare = GetComponent <glareFxClassic>();
                flare.enabled = false;
            }
        }
        newToggle = GUI.Toggle(new Rect(20, 120, 180, 20), sunAmbient, "Солнечные лучи");
        if (newToggle != sunAmbient)
        {
            sunAmbient = newToggle;
            if (sunAmbient)
            {
                SunShafts shafts = GetComponent <SunShafts>();
                shafts.enabled = true;
            }
            else
            {
                SunShafts shafts = GetComponent <SunShafts>();
                shafts.enabled = false;
            }
        }
        newToggle = GUI.Toggle(new Rect(20, 140, 180, 20), planetSpin, "Вращение планеты");
        if (newToggle != planetSpin)
        {
            planetSpin = newToggle;
            if (planetSpin)
            {
                TurnAround temp  = sun.GetComponent <TurnAround>();
                SU_Planet  temp1 = earth.GetComponent <SU_Planet>();
                temp.enabled  = true;
                temp1.enabled = true;
            }
            else
            {
                TurnAround temp  = sun.GetComponent <TurnAround>();
                SU_Planet  temp1 = earth.GetComponent <SU_Planet>();
                temp.enabled  = false;
                temp1.enabled = false;
            }
        }
    }
Beispiel #7
0
 protected void Awake()
 {
     floorDetector = GetComponent <FloorDetector>();
     turnAround    = GetComponent <TurnAround>();
 }
Beispiel #8
0
 protected void Awake()
 {
     dragonController = FindObjectOfType <DragonController>();
     player           = FindObjectOfType <TurnAround>();
     walkMovement     = FindObjectOfType <WalkMovement>();
 }