Exemple #1
0
    public static CardPile MakeCardPile(int i)
    {
        System.Random rand = new System.Random();
        GameObject    g    = Instantiate(Resources.Load("Card_Select"), new Vector3(0, 0), Quaternion.identity) as GameObject;

        g.tag = "CardPile";
        CardPile         c     = g.GetComponent <CardPile>();
        List <CardState> cards = new List <CardState>();

        for (int k = 0; k < i + 1; k++)
        {
            //cards.Add(allCardBuilders[rand.Next(allCardBuilders.Count)].GetCardState(0));
            cards.Add(CardStateBuilder.GetRandomCard());
        }

        c.AddList(cards);
        int num = 5;

        if (i < num)
        {
            num = i;
        }
        c.Initiate(num);

        return(c);
    }
Exemple #2
0
    public static void AddToAll(CardStateBuilder c)
    {
        if (allCardBuilders == null)
        {
            allCardBuilders = new List <CardStateBuilder>();
        }

        allCardBuilders.Add(c);
    }
Exemple #3
0
    public new void Awake()
    {
        base.Awake();

        offHand = new List <GameObject>();

        cardsPerTurn  = 5;
        handLimit     = 5;
        energyPerTurn = 4;
        currentEnergy = 4;

        handObjects   = new List <GameObject>();
        energyObjects = new List <GameObject>();

        energyPerTurn = 4;
        currentEnergy = energyPerTurn;

        Task        ex = new Damage(10);
        List <Task> li = new List <Task> {
            ex
        };

        CardState    baseCard = new CardState("example", 1, li, "Sounds/PunchSound", "Sprites/CardIcons/Fist", "Enemy attack");
        List <float> means    = new List <float> {
            9f,
            10f,
            11f
        };
        List <float> stdDev = new List <float> {
            2.5f,
            3.75f,
            1f
        };
        TaskBuilder        strike = new TaskBuilder(new Damage(0), means, stdDev);
        List <TaskBuilder> tasks  = new List <TaskBuilder> {
            strike
        };
        CardStateBuilder stateBuilder = new CardStateBuilder(new StrikeState(), tasks);

        //CardPile.Add(stateBuilder);

        for (int i = 0; i < 10; i++)
        {
            //AddCard(stateBuilder.GetCardState(1));
            AddCard(new StrikeState());
            //AddCard(new PoisonState());
            //AddCard(new BetrayState());
            //AddCard(new HealState());
            //AddCard(new NukeState());
            //AddCard(new LeechState());
            //AddCard(new DumpState());
        }
    }
    void Awake()
    {
        // **************** NEW CODE *******************************
        AllCardStates = new List <CardStateBuilder>();
        rand          = new System.Random();
        // *********************************************************

        gameType = GameType.InitialMenu;

        Quaternion q = Quaternion.identity;

        selectionType = SelectionType.SelectCardToPlay;

        List <GameObject> gameObjectEntities = new List <GameObject> {
            InstantiateEntity("Player", -8.1F, 1),
            InstantiateEntity("Player", -5.2F, 1),
        };

        if (entities != null && entities.Count != 0)
        {
            int size = entities.Count;
            for (int i = 0; i < size; i++)
            {
                Kill(entities[0]);
            }
        }
        entities = new List <Entity>();
        foreach (GameObject o in gameObjectEntities)
        {
            entities.Add(o.GetComponent <Entity>());
        }

        CardStateBuilder.AddToAll(new StrikeState());
        CardStateBuilder.AddToAll(new PoisonState());
        CardStateBuilder.AddToAll(new BetrayState());
        CardStateBuilder.AddToAll(new HealState());
        CardStateBuilder.AddToAll(new NukeState());
        CardStateBuilder.AddToAll(new DumpState());
        CardStateBuilder.AddToAll(new HealEffectState());
        CardStateBuilder.AddToAll(new DamageAllState());
        CardStateBuilder.AddToAll(new MultiStrikeState());

        CardStateBuilder.AddToAllEnemy(new StrikeState());
        CardStateBuilder.AddToAllEnemy(new PoisonState());
        CardStateBuilder.AddToAllEnemy(new NukeState());
        CardStateBuilder.AddToAllEnemy(new DumpState());
        CardStateBuilder.AddToAllEnemy(new MultiStrikeState());



        menu = Menu.InitialMenu().GetComponent <Menu>();
    }
    public Enemy CreateEnemy(string enemyType, float x, float y)
    {
        //Debug.Log("create enemy");
        Enemy            e          = (Enemy)GameController.InstantiateEntity(enemyType, x, y).GetComponent <Entity>();
        List <CardState> enemyCards = new List <CardState>();

        for (int i = 0; i < cardBuilders.Count; i++)
        {
            //enemyCards.Add(cardBuilders[i].GetCardState(level));
            enemyCards.Add(CardStateBuilder.GetRandomEnemyCard());
        }
        e.SetCards(enemyCards);
        e.SetSprite(spritePaths[r.Next(spritePaths.Count)]);
        //Debug.Log("setting enemy");
        e.gameObject.GetComponent <SpriteRenderer>().sortingLayerName = "EntityLayer";
        return(e);
    }
Exemple #6
0
// Use this for initialization
    void Start()
    {
        ((Player)entities[0]).SetPlayerOne(true);
        ((Player)entities[1]).SetPlayerOne(false);
        entities[0].SetHealthBar(p1HealthBar, p1HealthText);
        entities[1].SetHealthBar(p2HealthBar, p2HealthText);
        entities[1].SetSprite("Sprites/knight_512px");

        // **************** NEW CODE *******************************
        Task        ex = new Damage(10);
        List <Task> li = new List <Task> {
            ex
        };

        for (int i = 0; i < 6; i++)
        {
            List <float> means = new List <float> {
                9f + i / 6f,
                10f + i / 6f,
                11f + i / 6f
            };
            List <float> stdDev = new List <float> {
                2.5f + i / 20f,
                3.75f + i / 20f,
                1f + i / 20f
            };
            TaskBuilder        strike = new TaskBuilder(new Damage(0), means, stdDev);
            List <TaskBuilder> tasks  = new List <TaskBuilder> {
                strike
            };
            CardStateBuilder stateBuilder = new CardStateBuilder(new StrikeState(), tasks);
            CardPile.AddToAll(stateBuilder);
            AllCardStates.Add(stateBuilder);

            enemyBuilder = EnemyBuilder.GetEnemyBuilder();
        }
        // *********************************************************
    }