Ejemplo n.º 1
0
    public static GameStacksMeta CreateFromGameGeneratorMeta(GameGeneratorMeta meta, PrefabsManager manager)
    {
        StackMeta startStack = new StackMeta();

        for (int i = 0; i < meta.ChipIDs.Length; i++)
        {
            ChipMeta chipMeta = manager.GetChipMeta(meta.ChipIDs [i]);
            chipMeta.CrushWeight = meta.CrushWeights [i];
            if (meta.InitFlips [i])
            {
                chipMeta.Flip();
            }
            startStack.Add(chipMeta);
        }
        startStack.CleanupStackForCrushedChips(0);

        StackMeta targetStack = startStack.Copy();

        targetStack.Permute(meta.Flips);

        return(new GameStacksMeta(startStack, targetStack, meta.Flips.Length));
    }