@@ -760,88 +760,76 @@ public class Game implements Serializable {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
var table = new AsciiTable(BorderStyle.UNICODE, slotMap.size());
|
||||
List<String> stringUp=new ArrayList<>();
|
||||
List<String> stringEmpty=new ArrayList<>();
|
||||
List<String> stringDown=new ArrayList<>();
|
||||
return PlayersStamp()+"\n"+BoardStamp()+"\n";
|
||||
}
|
||||
public String PlayersStamp()
|
||||
{
|
||||
StringBuilder stringBuilder=new StringBuilder();
|
||||
for(int i=0;i<playersList.size()/2;i++)
|
||||
{
|
||||
stringBuilder.append(AsciiTable.sideBySide(List.of(playersList.get((i*2)).toString().split("\n")),List.of(playersList.get((i*2+1)).toString().split("\n")),2));
|
||||
}
|
||||
stringBuilder.append("\n");
|
||||
if(playersList.size()%2!=0)
|
||||
{
|
||||
stringBuilder.append(playersList.get(playersList.size()-1).toString());
|
||||
stringBuilder.append("\n");
|
||||
}
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
public String BoardStamp()
|
||||
{
|
||||
var offerTrack = new AsciiTable(BorderStyle.UNICODE, slotMap.size());
|
||||
List<String> stringUpOffer=new ArrayList<>();
|
||||
List<String> stringDownOffer=new ArrayList<>();
|
||||
|
||||
for(Map.Entry<Slot,Player> entry:slotMap.entrySet())
|
||||
{
|
||||
stringEmpty.add(" ");
|
||||
stringDown.add(entry.getKey().toStringTUI());
|
||||
stringDownOffer.add(entry.getKey().toStringTUI());
|
||||
if(entry.getValue()!=null)
|
||||
stringUp.add(entry.getValue().getUserName());
|
||||
stringUpOffer.add(entry.getValue().getUserName());
|
||||
else
|
||||
stringUp.add(" ");
|
||||
stringUpOffer.add(" ");
|
||||
}
|
||||
table.addRow(stringUp);
|
||||
table.addRow(stringEmpty);
|
||||
table.addRow(stringDown);
|
||||
|
||||
List<String>lines=List.of(orderLogicCard.toString().split("\n"));
|
||||
List<String> lines2=new ArrayList<>();
|
||||
lines2.add("OFFER TRACK");
|
||||
lines2.addAll(List.of(table.build().split("\n")));
|
||||
var TribeTableUpper = new AsciiTable(BorderStyle.UNICODE,1);
|
||||
var TribeTableLower = new AsciiTable(BorderStyle.UNICODE,1);
|
||||
|
||||
String boardToString=AsciiTable.sideBySide(lines,lines2,1);
|
||||
|
||||
|
||||
|
||||
var table2 = new AsciiTable(BorderStyle.UNICODE, Math.max(getUpperListTribeCards().size(),getLowerListTribeCards().size()));
|
||||
List<String> stringUp2=new ArrayList<>();
|
||||
List<String> stringDown2=new ArrayList<>();
|
||||
List<String> stringUpperListTribe=new ArrayList<>();
|
||||
List<String> stringLowerListTribe=new ArrayList<>();
|
||||
stringUpperListTribe.add("Char/Events");
|
||||
stringLowerListTribe.add("Char/Events");
|
||||
for(int i=0;i<Math.max(getUpperListTribeCards().size(),getLowerListTribeCards().size());i++)
|
||||
{
|
||||
if(i<getUpperListTribeCards().size())
|
||||
{
|
||||
stringUp2.add(getUpperListTribeCards().get(i).toStringBoard());
|
||||
}
|
||||
else
|
||||
{
|
||||
stringUp2.add("");
|
||||
stringUpperListTribe.add(getUpperListTribeCards().get(i).toStringBoard());
|
||||
}
|
||||
if(i<getLowerListTribeCards().size())
|
||||
{
|
||||
stringDown2.add(getLowerListTribeCards().get(i).toStringBoard());
|
||||
}
|
||||
else
|
||||
{
|
||||
stringDown2.add("");
|
||||
stringLowerListTribe.add(getLowerListTribeCards().get(i).toStringBoard());
|
||||
}
|
||||
}
|
||||
table2.addRow(stringUp2);
|
||||
table2.addRow(stringDown2);
|
||||
var BuildTableUpper = new AsciiTable(BorderStyle.UNICODE,1);
|
||||
BuildTableUpper.addHeader("Building ");
|
||||
var BuildTableLower = new AsciiTable(BorderStyle.UNICODE,1);
|
||||
BuildTableLower.addHeader("Building ");
|
||||
|
||||
var table3 = new AsciiTable(BorderStyle.UNICODE, Math.max(getUpperListBuilding().size(),getLowerListBuilding().size()));
|
||||
List<String> stringUp3=new ArrayList<>();
|
||||
List<String> stringDown3=new ArrayList<>();
|
||||
for(int i=0;i<Math.max(getUpperListBuilding().size(),getLowerListBuilding().size());i++)
|
||||
{
|
||||
if(i<getUpperListBuilding().size())
|
||||
{
|
||||
stringUp3.add(getUpperListBuilding().get(i).toString());
|
||||
}
|
||||
else
|
||||
{
|
||||
stringUp3.add("-");
|
||||
BuildTableUpper.addRow(getUpperListBuilding().get(i).toString());
|
||||
}
|
||||
if(i<getLowerListBuilding().size())
|
||||
{
|
||||
stringDown3.add(getLowerListBuilding().get(i).toString());
|
||||
}
|
||||
else
|
||||
{
|
||||
stringDown3.add("-");
|
||||
BuildTableLower.addRow(getLowerListBuilding().get(i).toString());
|
||||
}
|
||||
}
|
||||
table3.addRow(stringUp3);
|
||||
table3.addRow(stringDown3);
|
||||
|
||||
String PlayerToString ="";
|
||||
for(Player p:playersList)
|
||||
{
|
||||
PlayerToString+=p.toString()+"\n";
|
||||
}
|
||||
return PlayerToString+"\n"+ boardToString +"UPPERList\\LOWERList\n"+table2.build() + "\nBUILDING\n"+table3.build() + "\n";
|
||||
//return s.toString()+"\n"++"\nOFFER TRACK\n"+ table.build()+"\n" ;
|
||||
stringUpperListTribe.forEach(x->TribeTableUpper.addRow(x));
|
||||
stringLowerListTribe.forEach(x->TribeTableLower.addRow(x));
|
||||
offerTrack.addRow(stringUpOffer);
|
||||
offerTrack.addRow(stringDownOffer);
|
||||
return "CURRENT STATE\n"+getCurrentState()+"\n"+orderLogicCard.toString()+"\n"+ AsciiTable.sideBySide(Arrays.stream((TribeTableUpper.build().split("\n"))).toList(), Arrays.stream(BuildTableUpper.build().split("\n")).toList(),2)+"\n"+offerTrack.build()+"\n"+AsciiTable.sideBySide(List.of(TribeTableLower.build().split("\n")), Arrays.stream(BuildTableLower.build().split("\n")).toList(),2);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user