Пример #1
0
    void EnemyDie(string b)
    {
        EnemyPacket enemyPacket = JsonUtility.FromJson <EnemyPacket>(b);
        GameObject  Enemy       = GameObject.Find(enemyPacket.id);

        Destroy(Enemy);
    }
Пример #2
0
    void EnemyEffect(string b)
    {
        EnemyPacket enemyPacket = JsonUtility.FromJson <EnemyPacket>(b);
        GameObject  Enemy       = GameObject.Find(enemyPacket.id);

        Enemy.GetComponent <EnemyFSM>().ShowHitEffect();
    }
Пример #3
0
    void EnemyAI_Attack(string b)
    {
        EnemyPacket enemyPacket = JsonUtility.FromJson <EnemyPacket>(b);
        GameObject  Enemy       = GameObject.Find(enemyPacket.id);

        if (enemyPacket.attack)
        {
            if (enemyPacket.target == PlayerName)
            {
                Slider slider = GameObject.Find("HPBar").GetComponent <Slider>();
                slider.value = enemyPacket.PlayerHp / 100;
            }
            else
            {
                // for(int i = 1; i < PartyMembers.Count; i++){
                //     Transform member = GameObject.Find("User" + i.ToString()).transform;
                //     if(member.FindChild("Text").GetComponent<Text>().text == enemyPacket.target){
                //         member.FindChild("HPBar").GetComponent<Slider>().value = enemyPacket.PlayerHp / 100;
                //         break;
                //     }
                // }
                if (isInParty)
                {
                    // int index = PartyMembers.FindIndex(i => i == enemyPacket.target);
                    // Transform member = GameObject.Find("User" + (index + 1).ToString()).transform;
                    // member.FindChild("HPBar").GetComponent<Slider>().value = enemyPacket.PlayerHp / 100;
                    for (int i = 1; i < PartyMembers.Count + 1; i++)
                    {
                        Transform member = GameObject.Find("User" + i.ToString()).transform;
                        if (member.FindChild("Text").GetComponent <Text>().text == enemyPacket.target)
                        {
                            member.FindChild("HPBar").GetComponent <Slider>().value = enemyPacket.PlayerHp / 100;
                            break;
                        }
                    }
                }
            }
        }
        //Enemy.transform.position = new Vector3(Convert.ToSingle(enemyPacket.x), 0, Convert.ToSingle(enemyPacket.z));
        Vector3 newPosition = new Vector3(Convert.ToSingle(enemyPacket.x), 0, Convert.ToSingle(enemyPacket.z));

        //Enemy.transform.position = Vector3.MoveTowards(Enemy.transform.position, newPosition, 1.5f * Time.deltaTime);
        Enemy.GetComponent <EnemyFSM>().targetPosition = newPosition;
        Enemy.GetComponent <EnemyFSM>().enemyState     = enemyPacket.message;
        Enemy.GetComponent <EnemyFSM>().attack         = enemyPacket.attack;
        Enemy.GetComponent <EnemyFSM>().target         = enemyPacket.target;
    }
Пример #4
0
    void EnemyAI_ToIdle(string b)
    {
        EnemyPacket enemyPacket = JsonUtility.FromJson <EnemyPacket>(b);
        GameObject  Enemy       = GameObject.Find(enemyPacket.id);
        //Enemy.transform.position = new Vector3(Convert.ToSingle(enemyPacket.x), 0, Convert.ToSingle(enemyPacket.z));
        Vector3 newPosition = new Vector3(Convert.ToSingle(enemyPacket.x), 0, Convert.ToSingle(enemyPacket.z));

        //Enemy.transform.position = Vector3.MoveTowards(Enemy.transform.position, newPosition, 1.5f * Time.deltaTime);
        //Enemy.transform.rotation = Quaternion.Euler(new Vector3(0, Convert.ToSingle(enemyPacket.angle_y) + 180, 0));
        //if(Vector3.Distance(Enemy.transform.position, new Vector3(Convert.ToSingle(enemyPacket.x), 0, Convert.ToSingle(enemyPacket.z))) > 0.5f){
        //   Debug.Log("이탈!!");
        //}
        Enemy.GetComponent <EnemyFSM>().targetPosition = newPosition;
        Enemy.GetComponent <EnemyFSM>().enemyState     = enemyPacket.message;
        Enemy.GetComponent <EnemyFSM>().attack         = enemyPacket.attack;
        Enemy.GetComponent <EnemyFSM>().moveAngle      = Convert.ToSingle(enemyPacket.angle_y);
    }