diff options
| author | Joe Zhao <ztuowen@gmail.com> | 2014-12-03 13:05:53 +0800 | 
|---|---|---|
| committer | Joe Zhao <ztuowen@gmail.com> | 2014-12-03 13:05:53 +0800 | 
| commit | 635589583b9af8994dd3f947dd3eb31157ecde1f (patch) | |
| tree | d4f1fc0c7d8483bf6b21e6c5139dea0adb9db4c4 /engine | |
| parent | 20192ee5e02f3b87992764b68063028cb15e9d50 (diff) | |
| download | Mahjong-635589583b9af8994dd3f947dd3eb31157ecde1f.tar.gz Mahjong-635589583b9af8994dd3f947dd3eb31157ecde1f.tar.bz2 Mahjong-635589583b9af8994dd3f947dd3eb31157ecde1f.zip  | |
Revised Aside
Need better input method
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/Engine.java | 22 | 
1 files changed, 16 insertions, 6 deletions
diff --git a/engine/Engine.java b/engine/Engine.java index efd853c..eec7b73 100644 --- a/engine/Engine.java +++ b/engine/Engine.java @@ -45,6 +45,16 @@ public class Engine {          deck = Deck.generateDeck();      } +    public static void playerPutAsideCards(GenericPlayer player, Card card, Aside aside) +    { +        boolean mark=true; +        for (Card asCard:aside.getRep()) +            if (card.getId() == asCard.getId() && mark) +                mark = true; +            else +                player.hand.remove(asCard); +    } +      public void mainLoop()      {          start(); @@ -61,14 +71,15 @@ public class Engine {                  hu=true;                  System.out.println(player.getName().concat(" Hule"));              } -            // An Gang +            // Gang              if (player.hand.gangAble(card))              {                  Aside aside = player.confirmJiaAnGang(card, 0); -                if (aside.getRep().getStdId()==card.getStdId()) +                if (aside.getRep()[0].getStdId()==card.getStdId())                  { +                    // An                      for (Aside exAside:player.hand.asides) -                        if (exAside.getRep().getStdId() == card.getStdId()) { +                        if (exAside.getRep()[0].getStdId() == card.getStdId()) {                              aside.setFrom(exAside.getFrom());                              player.hand.asides.remove(exAside);                              break; @@ -76,9 +87,8 @@ public class Engine {                      player.hand.asides.add(aside);                  }                  else { -                    player.hand.asides.add(aside); -                    for (int i=0;i<3;++i) -                        player.hand.remove(card); +                    // Jia +                    playerPutAsideCards(player,card,aside);                      // @TODO Remove consider card no                  }              }  | 
