示例#1
0
    /// <summary>
    /// 生成所有员工
    /// </summary>
    /// <param name="itemData"></param>
    public void CreateAllWorker(StoryInfoDetailsBean itemData)
    {
        GameDataBean         gameData          = GameDataHandler.Instance.manager.GetGameData();
        List <CharacterBean> listCharacterData = gameData.listWorkerCharacter;

        if (CheckUtil.ListIsNull(listCharacterData))
        {
            return;
        }
        if (itemData.horizontal == 0)
        {
            itemData.horizontal = 1;
        }
        int horizontalNumber     = listCharacterData.Count / itemData.horizontal;
        int tempHorizontalNumber = 0;

        for (int i = 0; i < listCharacterData.Count; i++)
        {
            CharacterBean characterData = listCharacterData[i];
            GameObject    objNpcModel   = StoryInfoHandler.Instance.manager.objNpcModel;
            GameObject    objNpc        = Instantiate(transform.gameObject, objNpcModel);

            int tempHorizontal = i / horizontalNumber;
            if (tempHorizontalNumber >= horizontalNumber)
            {
                tempHorizontalNumber = 0;
            }
            float positionX = itemData.position_x + tempHorizontalNumber * itemData.offset_x;
            float positionY = itemData.position_y + tempHorizontal * itemData.offset_y;

            tempHorizontalNumber++;

            objNpc.transform.localPosition = new Vector3(positionX, positionY);
            NpcAIStoryCpt aiNpc = objNpc.GetComponent <NpcAIStoryCpt>();
            //设置编号
            objNpc.name = "character_" + (i + 1001);
            aiNpc.SetCharacterData(characterData);
            aiNpc.SetCharacterFace(itemData.face);
            listNpcObj.Add(objNpc);
        }
    }