Esempio n. 1
0
    // Use this for initialization
    void Start()
    {
        rigd = GetComponent <Rigidbody> ();
        pat  = GameObject.Find("Patrols1_R").GetComponent <PatrolPos> ();

        InvokeRepeating("Attack", 0, 3.0f);
    }
Esempio n. 2
0
    // Use this for initialization
    void Start()
    {
        tr        = GetComponent <Transform> ();
        playerctr = GameObject.Find("Muki").GetComponent <PlayerCtrl2> ();

        pat1R = GameObject.Find("Patrols1_R").GetComponent <PatrolPos> ();
        pat2R = GameObject.Find("Patrols2_R").GetComponent <PatrolPos> ();
        pat2L = GameObject.Find("Patrols2_L").GetComponent <PatrolPos> ();
        pat3R = GameObject.Find("Patrols3_R").GetComponent <PatrolPos> ();
    }
Esempio n. 3
0
    // Use this for initialization
    void Start()
    {
        rigd         = GetComponent <Rigidbody> ();
        meshRenderer = GetComponent <MeshRenderer> ();
        bounder      = GetComponent <CapsuleCollider> ();

        for (int i = 0; i < 5; i++)
        {
            meshRenderer.sharedMaterials [i].shader = Shader.Find("Standard");
        }

        pat1R       = GameObject.Find("Patrols1_R").GetComponent <PatrolPos> ();
        pat2R       = GameObject.Find("Patrols2_R").GetComponent <PatrolPos> ();
        pat2L       = GameObject.Find("Patrols2_L").GetComponent <PatrolPos> ();
        pat3R       = GameObject.Find("Patrols3_R").GetComponent <PatrolPos> ();
        pre_nodeNum = 0; next_nodeNum = 1;
        patrol      = pat1R;
    }
Esempio n. 4
0
    // Use this for initialization
    void Start()
    {
        switch (pathNum)
        {
        case 1:
            pat = GameObject.Find("Patrols1_R").GetComponent <PatrolPos> ();
            break;

        case 2:
            pat = GameObject.Find("Patrols2_R").GetComponent <PatrolPos> ();
            break;

        case 3:
            pat = GameObject.Find("Patrols2_L").GetComponent <PatrolPos> ();
            break;

        default:
            pat = GameObject.Find("Patrols3_R").GetComponent <PatrolPos> ();
            break;
        }

        current_node = left_node;
        rd           = GetComponent <Rigidbody> ();
    }
Esempio n. 5
0
    //이동
    void Move()
    {
        if (hori == 0)
        {
            return;
        }

        if (path == 1)
        {
            if (pre_nodeNum < 36 && Input.GetButtonDown("SelectRoad"))
            {
                path   = 3;
                patrol = pat3R;
            }
            else if (40 <= pre_nodeNum && Input.GetButtonDown("SelectRoad"))
            {
                path          = 2;
                patrol        = pat2R;
                pre_nodeNum  -= 19;
                next_nodeNum -= 19;
            }
        }
        else if (path == 2)
        {
            if (20 <= pre_nodeNum && Input.GetButtonDown("SelectRoad"))
            {
                path   = 1;
                patrol = pat1R;
                if (20 <= pre_nodeNum && pre_nodeNum <= 25)
                {
                    pre_nodeNum  = 44;
                    next_nodeNum = 45;
                }
                else
                {
                    pre_nodeNum  += 19;
                    next_nodeNum += 19;
                }
            }
        }
        else if (path == 3)
        {
            if (pre_nodeNum < 36 && Input.GetButtonDown("SelectRoad"))
            {
                path   = 1;
                patrol = pat1R;
            }

            if (59 <= pre_nodeNum && Input.GetButtonDown("SelectRoad"))
            {
                path          = 4;
                patrol        = pat2L;
                pre_nodeNum  -= 36;
                next_nodeNum -= 36;
            }
        }
        else if (path == 4)
        {
            if (23 <= pre_nodeNum && Input.GetButtonDown("SelectRoad"))
            {
                path          = 3;
                patrol        = pat3R;
                pre_nodeNum  += 36;
                next_nodeNum += 36;
            }
        }


        //set node number
        if (moveDir.x < 0)
        {
            if (Vector3.Distance(Vector3.right * transform.position.x, Vector3.right * patrol.patrolPostition [pre_nodeNum].x) <= 0.1f &&
                Vector3.Distance(Vector3.forward * transform.position.z, Vector3.forward * patrol.patrolPostition [pre_nodeNum].z) <= 0.1f)
            {
                pre_nodeNum = pre_nodeNum - 1;
                if (pre_nodeNum < 0)
                {
                    pre_nodeNum = 0;
                }
            }
        }
        else
        {
            if (Vector3.Distance(Vector3.right * transform.position.x, Vector3.right * patrol.patrolPostition [next_nodeNum].x) <= 0.1f &&
                Vector3.Distance(Vector3.forward * transform.position.z, Vector3.forward * patrol.patrolPostition [next_nodeNum].z) <= 0.1f)
            {
                pre_nodeNum = pre_nodeNum + 1;
                if (pre_nodeNum == patrol.patrolPostition.Count)
                {
                    pre_nodeNum = patrol.patrolPostition.Count - 1;
                }
            }
        }
        next_nodeNum = pre_nodeNum + 1;

        //move

        if (hori > 0)
        {
            Vector3 moveDir = Vector3.right * patrol.patrolPostition [next_nodeNum].x + Vector3.up * transform.position.y + Vector3.forward * patrol.patrolPostition [next_nodeNum].z;
            transform.position = Vector3.MoveTowards(transform.position, moveDir, hori * Time.deltaTime);
        }
        else if (hori < 0)
        {
            Vector3 moveDir = Vector3.right * patrol.patrolPostition [pre_nodeNum].x + Vector3.up * transform.position.y + Vector3.forward * patrol.patrolPostition [pre_nodeNum].z;
            transform.position = Vector3.MoveTowards(transform.position, moveDir, -1 * hori * Time.deltaTime);
        }

        //print (pre_nodeNum.ToString ());

        Turn();
    }