- Lux Superhero
- Posts: 4080
- Joined: Sat Jul 07, 2007 12:18 am
- Location: Floating down the river
You can tell a few ways.
First when it is another players turn you will see the territory that they selected pulse with their designated color. If they take a new territory that will change color.
Second, in the information box it will tell you how many territories each player holds. That will obviously change if they gain a new territory.
Lastly, in the information box there is a column for how many cards a player has. Whenever a new territory is taken a player gets a new card.
(sometimes, rarely, a player may get a card without taking a territory but that is a glitch)
You can cash your cards with a minimum of 3 matching cards or 2 matching and a wild. Once you get to 5 cards a player has to cash.
Hope that helps
The included Javadocs will point you in the right direction. The board class includes a method for returning the number of cards held by specific players. You could extend that by comparing counts from one round to the next. Same goes for a list of countries owned by players too.
And, yeah, don't assume that a player will receive a card if he successfully conquers a country, or that he won't if he doesn't. Unfortunately, there's a long standing bug in Lux that can cause an attacker to not receive a card, or a non-attacker to receive a card, if the previous player waited until the last second of his round to attack, and there's network any lag between the player's computer and the host server. In order words, a card can and occasionally will "bleed into" the next player's turn. Best to use getPlayerCards() rather than comparing country arrays.
∞ paranoiarodeo waves his hands around ∞