Exemple #1
0
    private void addMonster(Vector3 pPos, bool isMonster)
    {
        if (isMonster == false)
        {
            pPos.x += 0.2f;
            pPos.z += 0.2f;
        }
        int    roleID = LevMonsterTab.getRandomMonsterID();
        string strPre = RoleInfoTable.GetPrefab(roleID);
        Object tmpPre = Resources.Load("Prefab/Model/" + strPre);

        if (tmpPre == null)
        {
            Debug.LogError("role prefab not find roleID:" + roleID.ToString());
        }


        GameObject tmpMonster = GameObject.Instantiate(tmpPre, pPos, Quaternion.identity, monsterManagerTrans) as GameObject;

        tmpMonster.name = "monster_" + monsterID.ToString();
        monsterID++;

        GameObjCommon.skinUpdate(roleID, tmpMonster.transform);
        setMonsterTagLayer(tmpMonster);
        addRigidbody(tmpMonster);
        //addMonsterColliderCode(tmpMonster);
        //addAniControl(tmpMonster);
        tmpMonster.AddComponent <monsterCollider>();
        tmpMonster.AddComponent <modelAnimatorControl>();

        roleProperty tmpPro = addRolePro(tmpMonster, roleID);

        if (isMonster)
        {
            tmpPro.InitData(camerTransform, canvasTransform, 0);
            CapsuleCollider tmpColl = tmpMonster.GetComponent <CapsuleCollider>();
            //tmpColl.isTrigger = true;
            tmpMonster.AddComponent <monsterNormalAI>();
        }

        /*
         * else
         * {
         *  tmpPro.InitData(camerTransform, canvasTransform, 1);
         *  followRole tmpFollow = tmpMonster.AddComponent<followRole>();
         *  //tmpFollow.mainObj = friendRole;
         *  friendRole = tmpMonster;
         * }
         */
        //go.GetComponent<MeshRenderer>().material = material;
        //go.name = roomName + nameIndex.ToString() + "_" + placeIndex.ToString();
    }
Exemple #2
0
    private void addRoleData(GameObject obj, int roleID)
    {
        GameObjCommon.skinUpdate(roleID, obj.transform);
        setRoleTagLayer(obj);
        addRigidbody(obj);
        // addMonsterColliderCode(obj);
        // addAniControl(obj);

        obj.AddComponent <roleCollider>();
        obj.AddComponent <modelAnimatorControl>();

        addRoleProperty(obj, roleID);
        obj.AddComponent <roleAI>();
    }
Exemple #3
0
    /*
     * private GameObject getHpPoint(Transform parent)
     * {
     *  GameObject res = parent.gameObject;
     *  int nCount = parent.childCount;
     *  for (int i = 0; i < nCount; i++)
     *  {
     *      Transform tmp = parent.GetChild(i);
     *      if (tmp.name == "HpPoint")
     *      {
     *          res = tmp.gameObject;
     *          break;
     *      }
     *  }
     *
     *  return res;
     * }
     */
    private void addRoleProperty(GameObject obj, int roleID)
    {
        roleProperty pro = obj.AddComponent <roleProperty>();

        RoleProTable.rolePro tmpPro = RoleProTable.GetFromRoleID(roleID);
        pro.roleSort = 1;
        pro.hpMax    = tmpPro.MaxHp;
        pro.hp       = gameDataMgr.gameData().m_roleData.bosshp[roleID];
        pro.attack   = tmpPro.Atk;
        pro.def      = tmpPro.Def;
        pro.element  = tmpPro.Ele;
        pro.roleID   = roleID;
        pro.level    = 1;
        pro.speed    = 0.5f;
        //  pro.turnTime = 0.0f;
        pro.HpUIPoint = GameObjCommon.getObjNode(obj.transform, "HpPoint");
    }
Exemple #4
0
    //怪物属性
    private roleProperty addRolePro(GameObject obj, int roleID)
    {
        roleProperty pro = obj.AddComponent <roleProperty>();

        RoleProTable.rolePro tmpPro = RoleProTable.GetFromRoleID(roleID);
        pro.roleSort  = 0;
        pro.hpMax     = tmpPro.MaxHp;
        pro.hp        = pro.hpMax;
        pro.attack    = tmpPro.Atk;
        pro.def       = tmpPro.Def;
        pro.element   = tmpPro.Ele;
        pro.roleID    = roleID;
        pro.level     = 1;
        pro.speed     = 0.5f;
        pro.HpUIPoint = GameObjCommon.getObjNode(obj.transform, "HpPoint");

        return(pro);
    }