public void SpawnNpc(int cfgid, Vector3 pos, Quaternion rot)
        {
            PrefabsConfig config =
                ConfigDataMgr.Instance.PrefabCfgLoader.GetDataByID(cfgid);

            if (!System.Object.ReferenceEquals(null, config))
            {
                GameObject go = PrefabsAssetHolder.Instance.GetPrefabByID(config.ID);
                if (go)
                {
                    GameObject npcInstance =
                        PrefabPoolingSystem.Instance.Spawn(go, pos, rot);

                    npcInstance.transform.SetParent(RoleContenter);

                    SimWood sw = npcInstance.GetComponent <SimWood>();

                    if (sw)
                    {
                        sw.Home = NPC_Home;
                        sw.Food = NPC_Food;
                    }
                }
            }
        }
示例#2
0
    public void Init(int length, PrefabsConfig pConfig)
    {
        resultUI.gameObject.SetActive(false);
        panels.Init(length, pConfig);
        GamePlayMode gpm = GameManager.Instance.gamePlayMode;

        switch (gpm.gameMode)
        {
        case GameMode.VSAI:
            player1TurnImage.sprite = roundSpritePVE.player1Turn;
            player2TurnImage.sprite = roundSpritePVE.player2Turn;
            break;

        default:
            player1TurnImage.sprite = roundSpritePVP.player1Turn;
            player2TurnImage.sprite = roundSpritePVP.player2Turn;
            break;
        }
        SetRound(0);
        if (!gpm.doUseSkill)
        {
            sBtn.gameObject.SetActive(false);
        }
        OnGameStart();
    }
示例#3
0
 public void Init(int length, PrefabsConfig pConfig)
 {
     for (int i = 0; i < length; i++)
     {
         UIPiecesBar b = GameObject.Instantiate(prefab);
         b.transform.SetParent(transform);
         b.transform.localScale = new Vector3(1, 1, 1);
         b.Init(length, i, pConfig.UIColors[i], pConfig);
         bars.Add(b);
     }
 }
示例#4
0
 public void Init(int length, int idx, Color piecesColor, PrefabsConfig pConfig)
 {
     for (int i = 0; i < length + 1; i++)
     {
         if (i == 0)
         {
             head.sprite = pConfig.UIScoreHeader[idx];
         }
         else
         {
             UIPiece p = GameObject.Instantiate(prefab);
             p.transform.SetParent(bar);
             p.Init(piecesColor, length, i);
             pieces.Add(p);
         }
     }
 }
示例#5
0
    //[Header("Prefabs")]
    //[SerializeField] PieceInstance piecePrefab;
    public void Init(PrefabsConfig pConfig)
    {
        boardManager = GameManager.Instance.boardManager;
        sideLength   = boardManager.boardLength;
        pieces       = new PieceInstance[sideLength, sideLength];
        int halfLength = (sideLength - 1) / 2;

        for (int i = 0; i < sideLength; i++)
        {
            for (int j = 0; j < sideLength; j++)
            {
                int colorID = (int)boardManager.pieces[i, j].pieceColor;
                //pieces[i, j] = Instantiate(piecePrefab, transform);
                pieces[i, j]       = Instantiate(pConfig.pieceInstancePrefabs[colorID], transform);
                pieces[i, j].name += ("(" + i + " , " + j + ")");
                pieces[i, j].transform.position += new Vector3((i - halfLength), 0, (j - halfLength));
                pieces[i, j].Init(i, j, boardManager.pieces[i, j].pieceColor, boardManager.pieces[i, j].isCrackPiece, this);
            }
        }
    }
示例#6
0
 public static void init(PrefabsConfig config)
 {
     prefabsConfig = config;
     refreshValidPrefabs(false);
 }