我正在尝试创建一个名为scopa的纸牌游戏。老实说,我不知道我在做什么,所以目前我正在看一个教程视频如何创建一个uno游戏,并试图适应它,使它适合我的游戏。然而,我坚持创建一个方法,从4张牌的甲板上的表开始游戏。这些桌牌可以被玩家拿走,并且可以添加更多的牌。每一张牌都有一个特定的值,玩家可以用这个值(通过匹配这些值,例如一个7硬币可以用一个7剑)。我也被困在如何编程,使表卡可以不同。任何建议将不胜感激,而且我是新的java,所以如果你能解释它在外行的话,那就更好了。谢谢。以下是我目前游戏类的代码:
package scopa;
import java.util.ArrayList;
import java.util.Arrays;
public class Game {
private int currentPlayer;
private String[] playerIds;
private ScopaDeck deck;
private ArrayList<ArrayList<ScopaCard>> playerHand;
private ArrayList<ScopaCard> stockpile;
private ArrayList<ScopaCard> validRank;
boolean gameDirection;
public Game(String[] pids) {
deck = new ScopaDeck();
// deck.shuffle();
stockpile = new ArrayList<ScopaCard>();
playerIds = pids;
currentPlayer = 0;
gameDirection = false;
playerHand = new ArrayList<ArrayList<ScopaCard>>();
for (int i = 0; i < pids.length; i++) {
ArrayList<ScopaCard> hand = new ArrayList<ScopaCard>(Arrays.asList(deck.drawCard(3)));
playerHand.add(hand);
}
}
public void start(Game game) {
ScopaCard card1 = deck.drawCard();
validRank = card1.getRank();
stockpile.add(card1);
ScopaCard card2 = deck.drawCard();
validRank = card2.getRank();
stockpile.add(card2);
ScopaCard card3 = deck.drawCard();
validRank = card3.getRank();
stockpile.add(card3);
ScopaCard card4 = deck.drawCard();
validRank = card4.getRank();
stockpile.add(card4);
}
public ScopaCard getTableCards() {
return new ScopaCard(validRank);
}
}
1条答案
按热度按时间qcuzuvrc1#
我看不到太多东西,因为我不太明白你的代码里发生了什么。如果可以的话,打开视频并检查描述/注解,看看代码是否粘贴在那里的任何地方,并将其与代码进行比较。如果不是,请尝试重新观看视频并检查代码的每个部分是否与视频相同。