@@ -7,26 +7,49 @@ import it.polimi.ingsw.gc14.Model.Player;
|
||||
public class Artist extends Character {
|
||||
|
||||
/**
|
||||
* Creates an Artist character card with the specified era.
|
||||
*
|
||||
* param Era artist era
|
||||
* @param Era the era of the Artist card
|
||||
*/
|
||||
public Artist(int Era) {
|
||||
super(Era, CharacterType.ARTIST);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an Artist character card with the specified Era and minimum number of players required to play it.
|
||||
*
|
||||
* @param Era the era of the Artist card
|
||||
* @param nMin the minimum number of players required for the card
|
||||
*/
|
||||
public Artist(int Era,int nMin) {
|
||||
super(Era, CharacterType.ARTIST,nMin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Artist card.
|
||||
*
|
||||
* @return the string representation of this Artist card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Artist card.
|
||||
*
|
||||
* @return a clone of this Artist card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Artist(getEra(), getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Artist card into the specified player's Artist collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
@Override
|
||||
public void insert(Player player) {
|
||||
player.artists.add(this);
|
||||
|
||||
@@ -6,19 +6,44 @@ import it.polimi.ingsw.gc14.Model.Player;
|
||||
|
||||
public class Builder extends Character
|
||||
{
|
||||
private int reductionValue;
|
||||
private int prestigeValue;
|
||||
|
||||
/**
|
||||
* The reduction value provided by this Builder card.
|
||||
*/
|
||||
private int reductionValue;
|
||||
|
||||
/**
|
||||
* The prestige value provided by this Builder card.
|
||||
*/
|
||||
private int prestigeValue;
|
||||
|
||||
/**
|
||||
* Returns the reduction value of this Builder card.
|
||||
*
|
||||
* @return Builder specific reduction value
|
||||
* @return the reduction value of this Builder card.
|
||||
*/
|
||||
public int getReductionValue() {
|
||||
return reductionValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the prestige value of this Builder card.
|
||||
*
|
||||
* @return the prestige value of this Builder card.
|
||||
*/
|
||||
public int getPrestigeValue() {
|
||||
return prestigeValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Builder character card with the specified era, reduction value,
|
||||
* and prestige value.
|
||||
*
|
||||
* @param Era the era of the Builder card.
|
||||
* @param reductionValue the reduction value of the Builder card.
|
||||
* @param prestigeValue the prestige value of the Builder card.
|
||||
* @throws IllegalArgumentException if {@code reductionValue < 0} or {@code prestigeValue < 0}.
|
||||
*/
|
||||
public Builder(int Era, int reductionValue, int prestigeValue) throws IllegalArgumentException {
|
||||
super(Era,CharacterType.BUILDER);
|
||||
if(reductionValue < 0) {
|
||||
@@ -32,6 +57,16 @@ public class Builder extends Character
|
||||
this.prestigeValue = prestigeValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Builder character card with the specified era, reduction value,
|
||||
* prestige value, and minimum number of players.
|
||||
*
|
||||
* @param Era the era of the Builder card.
|
||||
* @param reductionValue the reduction value of the Builder card.
|
||||
* @param prestigeValue the prestige value of the Builder card.
|
||||
* @param nMin the minimum number of players required for the card.
|
||||
* @throws IllegalArgumentException if {@code reductionValue < 0} or {@code prestigeValue < 0}.
|
||||
*/
|
||||
public Builder(int Era, int reductionValue, int prestigeValue,int nMin) throws IllegalArgumentException {
|
||||
super(Era,CharacterType.BUILDER,nMin);
|
||||
if(reductionValue < 0) {
|
||||
@@ -44,14 +79,30 @@ public class Builder extends Character
|
||||
}
|
||||
this.prestigeValue = prestigeValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Builder card.
|
||||
*
|
||||
* @return the string representation of this Builder card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() { return super.toString()+" Reduction Value: " + String.valueOf(reductionValue) + "\n Prestige Value: " + String.valueOf(prestigeValue); }
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Builder card.
|
||||
*
|
||||
* @return a clone of this Builder card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Builder(getEra(),getReductionValue(), getPrestigeValue(), getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Builder card into the specified player's Builder collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
public void insert(Player player) {
|
||||
player.builders.add(this);
|
||||
}
|
||||
|
||||
@@ -7,24 +7,49 @@ import it.polimi.ingsw.gc14.Model.Player;
|
||||
public class Gatherer extends Character {
|
||||
|
||||
/**
|
||||
* Creates a Gatherer character card with the specified era.
|
||||
*
|
||||
* @param Era gatherers era
|
||||
* @param Era Gatherers era.
|
||||
*/
|
||||
public Gatherer(int Era) {
|
||||
super(Era, CharacterType.GATHERER);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Gatherer character card with the specified era and minimum number of players.
|
||||
*
|
||||
* @param Era the era of the Gatherer card.
|
||||
* @param nMin the minimum number of players required for the card.
|
||||
*/
|
||||
public Gatherer(int Era, int nMin) {
|
||||
super(Era, CharacterType.GATHERER,nMin);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Gatherer card.
|
||||
*
|
||||
* @return the string representation of this Gatherer card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Gatherer card.
|
||||
*
|
||||
* @return a clone of this Gatherer card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Gatherer(getEra(), getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Gatherer card into the specified player's Gatherer collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
public void insert(Player player) {
|
||||
player.gatherers.add(this);
|
||||
}
|
||||
|
||||
@@ -4,40 +4,67 @@ import it.polimi.ingsw.gc14.Model.Cards.TribeCards.Character;
|
||||
import it.polimi.ingsw.gc14.Model.Cards.TribeCards.CharacterType;
|
||||
import it.polimi.ingsw.gc14.Model.Player;
|
||||
|
||||
public class Hunter extends Character {
|
||||
public class Hunter extends Character {
|
||||
private boolean icon;
|
||||
|
||||
/**
|
||||
* Returns whether this Hunter card has the icon.
|
||||
*
|
||||
* @return Hunter specific icon
|
||||
* @return {@code true} if this Hunter card has the icon, {@code false} otherwise.
|
||||
*/
|
||||
public boolean getIcon() {
|
||||
return icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Hunter character card with the specified era and icon value.
|
||||
*
|
||||
* @param Era hunter era
|
||||
* @param icon hunter icon
|
||||
* @param Era the era of the Hunter card.
|
||||
* @param icon the icon value of the Hunter card.
|
||||
*/
|
||||
public Hunter(int Era, boolean icon) {
|
||||
super(Era, CharacterType.HUNTER);
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Hunter character card with the specified era, icon value,
|
||||
* and minimum number of players.
|
||||
*
|
||||
* @param Era the era of the Hunter card.
|
||||
* @param icon the icon value of the Hunter card.
|
||||
* @param nMin the minimum number of players required for the card.
|
||||
*/
|
||||
public Hunter(int Era, boolean icon, int nMin) {
|
||||
super(Era, CharacterType.HUNTER,nMin);
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Hunter card.
|
||||
*
|
||||
* @return the string representation of this Hunter card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + "Icon: " + String.valueOf(icon);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Hunter card.
|
||||
*
|
||||
* @return a clone of this Hunter card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Hunter(getEra(), getIcon(), getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Hunter card into the specified player's Hunter collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
@Override
|
||||
public void insert(Player player) {
|
||||
player.hunters.add(this);
|
||||
|
||||
@@ -7,18 +7,20 @@ public class Inventor extends Character {
|
||||
private int icon;
|
||||
|
||||
/**
|
||||
* Returns the icon value of this Inventor card.
|
||||
*
|
||||
* @return Inventor Specific Symbol
|
||||
* @return the icon value of this Inventor card.
|
||||
*/
|
||||
public int Icon() {
|
||||
return icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an Inventor character card with the specified era and icon value.
|
||||
*
|
||||
* @param Era inventor era
|
||||
* @param icon inventor symbol
|
||||
* @throws IllegalArgumentException
|
||||
* @param Era the era of the Inventor card.
|
||||
* @param icon the icon value of the Inventor card.
|
||||
* @throws IllegalArgumentException if {@code icon < 0} or {@code icon > 9}.
|
||||
*/
|
||||
public Inventor(int Era,int icon) throws IllegalArgumentException {
|
||||
super(Era, CharacterType.INVENTOR);
|
||||
@@ -26,21 +28,48 @@ public class Inventor extends Character {
|
||||
throw new IllegalArgumentException();
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an Inventor character card with the specified era, icon value,
|
||||
* and minimum number of players.
|
||||
*
|
||||
* @param Era the era of the Inventor card.
|
||||
* @param icon the icon value of the Inventor card.
|
||||
* @param nMin the minimum number of players required for the card.
|
||||
* @throws IllegalArgumentException if {@code icon < 0} or {@code icon > 9}.
|
||||
*/
|
||||
public Inventor(int Era,int icon,int nMin) throws IllegalArgumentException {
|
||||
super(Era, CharacterType.INVENTOR,nMin);
|
||||
if(icon<0 || icon>9)
|
||||
throw new IllegalArgumentException();
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Inventor card.
|
||||
*
|
||||
* @return the string representation of this Inventor card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + " Symbol:" + String.valueOf(icon);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Inventor card.
|
||||
*
|
||||
* @return a clone of this Inventor card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Inventor(getEra(),icon, getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Inventor card into the specified player's Inventor collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
@Override
|
||||
public void insert(Player player) {
|
||||
player.inventors.add(this);
|
||||
|
||||
@@ -10,36 +10,63 @@ public class Shaman extends Character {
|
||||
private int icon;
|
||||
|
||||
/**
|
||||
* Returns the icon value of this Shaman card.
|
||||
*
|
||||
* @return Shaman specific icon
|
||||
* @return the icon value of this Shaman card.
|
||||
*/
|
||||
public int getIcon() {
|
||||
return icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Shaman character card with the specified era and icon value.
|
||||
*
|
||||
* @param Era shaman era
|
||||
* @param icon shaman icon
|
||||
* @param Era the era of the Shaman card.
|
||||
* @param icon the icon value of the Shaman card.
|
||||
*/
|
||||
public Shaman(int Era, int icon) {
|
||||
super(Era, CharacterType.SHAMAN);
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Shaman character card with the specified era, icon value,
|
||||
* and minimum number of players.
|
||||
*
|
||||
* @param Era the era of the Shaman card.
|
||||
* @param icon the icon value of the Shaman card.
|
||||
* @param nMin the minimum number of players required for the card.
|
||||
*/
|
||||
public Shaman(int Era, int icon, int nMin) {
|
||||
super(Era, CharacterType.SHAMAN,nMin);
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string representation of this Shaman card.
|
||||
*
|
||||
* @return the string representation of this Shaman card.
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + "icon: " + String.valueOf(icon);
|
||||
return super.toString() + "Icon: " + String.valueOf(icon);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a copy of this Shaman card.
|
||||
*
|
||||
* @return a clone of this Shaman card.
|
||||
*/
|
||||
@Override
|
||||
public Character clone() {
|
||||
return new Shaman(getEra(), getIcon(), getNMin());
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts this Shaman card into the specified player's Shaman collection.
|
||||
*
|
||||
* @param player the player who receives the card.
|
||||
*/
|
||||
@Override
|
||||
public void insert(Player player)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user