对于卡牌游戏的常见功能

洗牌功能

// 打乱卡牌的顺序
for (int i = 0; i < card.length; i++) {
Random random = new Random();
Card cardtmp = card[i];
listCard.remove(cardtmp);
// index为0至103之间的整数
int index = random.nextInt(listCard.size());
listCard.add(index, cardtmp);

}

发牌功能

//初始发的四张牌
public void giveCard(){
System.out.println();
if(this instanceof Player){
System.out.println("发牌给玩家:"+ character.getName());
}

else if(this instanceof PlayerAI){
System.out.println("发牌给对手:"+ character.getName());
}

for(int i = 0; i < 4; i++){
Card card = Initial.listCard.get(0);
handCard.add(card);
Initial.listCard.remove(0);

}
}

摸牌功能

public void fetchCard(int num){
System.out.println();
System.out.print("玩家摸"+num+"张牌后,");
for (int i = 0; i < num; i++) {
Card card = Initial.listCard.get(0);
handCard.add(card);
Initial.listCard.remove(0);
}
}

展示手牌

//显示手牌信息
public void showHandCard(){
Iterator<Card> it = handCard.iterator();
System.out.println("手牌信息为:");
int count = 1;
while(it.hasNext()){
Card card = it.next();
System.out.print(count+"."+card.getColor()+card.getNum()+"["+card.getKey()+"] ");
System.out.print("\t");
count++;
}
System.out.println();
}

猜你喜欢

转载自www.cnblogs.com/Tangxiaolin/p/9141811.html