当前位置: 首页>>代码示例>>C#>>正文


C# Deck.cardMatch方法代码示例

本文整理汇总了C#中Deck.cardMatch方法的典型用法代码示例。如果您正苦于以下问题:C# Deck.cardMatch方法的具体用法?C# Deck.cardMatch怎么用?C# Deck.cardMatch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Deck的用法示例。


在下文中一共展示了Deck.cardMatch方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: generateDeck

    /**
     * Functions to configure the deck generation
     */
    /**
     * Compile the deck
     */
    public Deck generateDeck()
    {
        Deck result = new Deck ();

        /**
         * Generate the deck here
         * TODO:
         * X - Random implementation first.
         *   - Sorted implementation based on weights.
         *   - ???
         *   - PROFIT!
         */

        /**
         * Doing it randomly is kinky.
         * We keep picking cards until the amount of cards in the drawPile
         * is that of the numberOfCards in preferences.
         *
         * In the future, this code will need to be refactored elsewhere
         * depending on the user's preferences in sorting.
         */
        /*
         * This function does several things: first, it computes the sum of all the binder weights.
         * Second, it randomly selects a binder based on its weight.
         * Third, it randomly selects a card in the randomly selected binder.
         * FINALLY, it adds the randomly chosen card into the deck for play.
         * Some time later down the road, this function may need to be refactored, but for now, it appears to be working.
         *
         * TODO: The random weighting system seems to be off. The last deck is ignored.
         *       Please fix regarding that.
         */

        int sum = 0;

        /*
         * Apply the
         */
        for (int i = 0; i < loadedBinders.Count; i++)
            sum += loadedBinders[i].weight;

        if (sum < 0)
            Debug.Log ("Cannot have a weight below 0! You suck. Nothing happens.");
        else {
            while (result.cardsLeft() < deckPreferences.numberOfCards) {
                int randomCard = Random.Range (0, sum+1);
                int i = 0;
                while (randomCard > loadedBinders[i].weight) {
                    randomCard -= loadedBinders [i].weight;
                    i++;
                }
                Card newCard = loadedBinders [i].getCard (-1);

                if (!(result.cardMatch (newCard)))
                    result.addCard (newCard);

            }
            result.shuffleDeck ();
        }
        return result;
    }
开发者ID:starrodkirby86,项目名称:better-quiz-app,代码行数:66,代码来源:DataBase.cs


注:本文中的Deck.cardMatch方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。