棋牌類遊戲利用位元組表示卡牌(僅撲克牌)

2021-09-12 02:22:53 字數 1755 閱讀 4019

#region 成員變數和列舉

public enum cardtype

public byte cardstemplate = new byte[55]

;public void init(){}

public readonly string cardsstr = new string[55]

;public readonly byte cardnumber = new byte[55]

;public readonly byte cardsby510k = new byte[12]

;public readonly string cardstype = new string[6]

;#endregion

#region 獲得牌的值和牌型別

public int cardtypeindex(byte card)

public int cardindex(byte card)

else if (card >= 0x21 && card <= 0x2d)

else if (card >= 0x31 && card <= 0x3d)

else if (card >= 0x41 && card <= 0x4d)

else if (card == 0x51 || card == 0x52)

return 0;

}public int cardvalue(byte card)

#region 在牌庫中隨機抽取指定數量的牌

/// /// 在牌庫中隨機抽取指定數量的牌(這裡是兩副牌)

///

public dictionary> randomcards(int king = 0)

}for (var i = 0; i < king; i++)

for (var playerindex = 1; playerindex <= 4; playerindex++)

playercards.add(playerindex, new list());

var cardlibraryorder = cardlibrary.orderby(d=>d.key).select(d=>d.value).tolist();

#endregion

#region 玩家按順序摸牌

while (true)

}#endregion

return playercards;

}/// /// 隨機一張牌出來、並且不進行入庫和出庫

///

///

///

public byte randomcard(byte cards)

return card;

}#endregion

public override void dispose()

}//隨機數幫助類

public static class randomhelper

public static int64 randint64()

/// /// 獲取lower與upper之間的隨機數

///

///

///

///

public static int randomnumber(int lower, int upper)

/// /// 獲取不重複的隨機數

///

///

public static int getrandomseed()

}

棋牌類遊戲測試

1,遊戲規則 在正確流程下完成,分別考慮勝負情況。在異常情況下完成,如中途退出,對手退出等情況。2,勝負情況下的收益變化 在每一種情況下獲勝的獎勵情況 棋牌獲勝有很多判斷,比如三條,同花等 每種獲勝條件獲得的收益是不同的。在輸掉或退出比賽情況下,是否有扣除情況 視遊戲設定而言 或者獲勝出現多人情況下...

棋牌類遊戲策劃的幾點思考

遊戲的策劃主要任務是由策劃部門完成,在這個過程中容易出現的情況是策劃人員要求的不合理 可能該測試人員不太了解遊戲開發 或是程式設計師理解錯了策劃人員的要求。所以個人在這裡認為要想寫好遊戲就要與策劃人員及客戶很好的交流。最近做的是乙個類似公升級的遊戲,對於這個遊戲,我想我犯了一點傻,遊戲是邊想邊寫,連...

使用Delphi編寫棋牌類遊戲 基礎篇 1

首先來說說關於遊戲開發中需要的一些基礎知識。第乙個基礎知識就是 鍊錶的使用。對於鍊錶的使用,首先涉及到的就是結構的定義。以下是我定義的乙個結構 使用者資訊結構 ruserinfo record userid string 20 boolean face byte score integer end ...