use of de.tectoast.emolga.utils.records.Coord in project Emolga by TecToast.
the class PickCommand method aslS10Doc.
private static void aslS10Doc(Tierlist tierlist, String pokemon, Draft d, long mem, String tier, int effectiveRound) {
JSONObject league = getEmolgaJSON().getJSONObject("drafts").getJSONObject(d.name);
String sid = league.getString("sid");
RequestBuilder b = new RequestBuilder(sid);
Coord c = getTierlistLocation(pokemon, tierlist);
logger.info("c.toString() = {}", c);
logger.info("c.valid() = {}", c.valid());
if (c.valid())
b.addBGColorChange(league.getInt("tierlist"), c.x() * 2 + 2, c.y() + 5, convertColor(0xFF0000));
Coord cengl = getTierlistLocation(pokemon, tierlist.tiercolumnsEngl);
if (cengl.valid())
b.addBGColorChange(league.getInt("tierlistengl"), cengl.x() * 2 + 2, cengl.y() + 5, convertColor(0xFF0000));
Integer points = tierlist.prices.get(tier);
Comparator<DraftPokemon> comparator = Comparator.comparing(p -> tierlist.order.indexOf(p.getTier()));
Comparator<DraftPokemon> finalComp = comparator.thenComparing(p -> p.name);
b.addAll("Teamseite HR!B%d".formatted(league.getLongList("table").indexOf(mem) * 15 + 4), d.picks.get(mem).stream().sorted(finalComp).map(mon -> new ArrayList<Object>(Arrays.asList(mon.getTier(), mon.getName(), getDataJSON().getJSONObject(getSDName(mon.getName())).getJSONObject("baseStats").getInt("spe")))).collect(Collectors.toList()));
int rr = effectiveRound - 1;
logger.info("d.originalOrder = {}", d.originalOrder);
logger.info("effectiveRound = {}", effectiveRound);
logger.info("mem = {}", mem);
int index = d.originalOrder.get(effectiveRound).indexOf(mem);
logger.info("index = {}", index);
b.addRow("Draft!%s%d".formatted(getAsXCoord((rr % 6) * 4 + 3), (rr / 6) * 10 + 4 + index), Arrays.asList(pokemon, points));
b.execute();
}
use of de.tectoast.emolga.utils.records.Coord in project Emolga by TecToast.
the class PickCommand method ndsdoc.
public static void ndsdoc(Tierlist tierlist, String pokemon, Draft d, long mem, String tier) {
JSONObject league = getEmolgaJSON().getJSONObject("drafts").getJSONObject(d.name);
// logger.info(d.order.get(d.round).stream().map(Member::getEffectiveName).collect(Collectors.joining(", ")));
RequestBuilder b = new RequestBuilder(league.getString("sid"));
String teamname = league.getJSONObject("teamnames").getString(mem);
String sdName = getSDName(pokemon);
JSONObject o = getDataJSON().getJSONObject(sdName);
int i = d.picks.get(mem).size() + 14;
Coord tl = getTierlistLocation(pokemon, tierlist);
String gen5Sprite = getGen5Sprite(o);
b.addSingle(teamname + "!B" + i, gen5Sprite).addSingle(teamname + "!D" + i, pokemon).addSingle("Tierliste!" + getAsXCoord(tl.x() * 6 + 6) + (tl.y() + 4), "='" + teamname + "'!B2");
List<Object> t = o.getStringList("types").stream().map(s -> getTypeIcons().getString(s)).collect(Collectors.toCollection(LinkedList::new));
if (t.size() == 1)
t.add("/");
b.addRow(teamname + "!F" + i, t);
b.addSingle(teamname + "!H" + i, o.getJSONObject("baseStats").getInt("spe"));
int pointsNeeded = tierlist.getPointsNeeded(pokemon);
b.addSingle(teamname + "!I" + i, pointsNeeded);
b.addSingle(teamname + "!J" + i, "2");
b.addRow(teamname + "!L" + i, Arrays.asList(canLearnNDS(sdName, "stealthrock"), canLearnNDS(sdName, "defog"), canLearnNDS(sdName, "rapidspin"), canLearnNDS(sdName, "voltswitch", "uturn", "flipturn", "batonpass", "teleport")));
int numInRound = d.originalOrder.get(d.round).indexOf(mem) + 1;
b.addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 3), numInRound * 5 + 2), "《《《《").addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 1), numInRound * 5 + 2), pokemon).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5), numInRound * 5 + 1), gen5Sprite).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5), numInRound * 5 + 3), pointsNeeded);
logger.info("d.members.size() = " + d.members.size());
logger.info("d.order.size() = " + d.order.get(d.round).size());
logger.info("d.members.size() - d.order.size() = " + numInRound);
// if (d.members.size() - d.order.get(d.round).size() != 1 && isEnabled)
b.execute();
}
use of de.tectoast.emolga.utils.records.Coord in project Emolga by TecToast.
the class SwitchCommand method ndsdoc.
public static void ndsdoc(Tierlist tierlist, Draft d, long mem, DraftPokemon oldmon, DraftPokemon newmon) {
JSONObject league = getEmolgaJSON().getJSONObject("drafts").getJSONObject(d.name);
logger.info("oldmon = {}", oldmon);
logger.info("newmon = {}", newmon);
// logger.info(d.order.get(d.round).stream().map(Member::getEffectiveName).collect(Collectors.joining(", ")));
RequestBuilder b = new RequestBuilder(league.getString("sid"));
String teamname = league.getJSONObject("teamnames").getString(mem);
String pokemon = newmon.getName();
String sdName = getSDName(pokemon);
JSONObject o = getDataJSON().getJSONObject(sdName);
int i = d.picks.get(mem).indexOf(newmon) + 15;
Coord tl = getTierlistLocation(pokemon, tierlist);
String oldmonName = oldmon.getName();
Coord tlold = getTierlistLocation(oldmonName, tierlist);
String gen5Sprite = getGen5Sprite(o);
b.addSingle(teamname + "!B" + i, gen5Sprite).addSingle(teamname + "!D" + i, pokemon).addSingle("Tierliste!" + getAsXCoord(tl.x() * 6 + 6) + (tl.y() + 4), "='" + teamname + "'!B2").addSingle("Tierliste!" + getAsXCoord(tlold.x() * 6 + 6) + (tlold.y() + 4), "-frei-");
List<Object> t = o.getStringList("types").stream().map(s -> getTypeIcons().getString(s)).collect(Collectors.toCollection(LinkedList::new));
if (t.size() == 1)
t.add("/");
b.addRow(teamname + "!F" + i, t);
b.addSingle(teamname + "!H" + i, o.getJSONObject("baseStats").getInt("spe"));
b.addSingle(teamname + "!I" + i, tierlist.getPointsNeeded(pokemon));
b.addSingle(teamname + "!J" + i, "2");
b.addRow(teamname + "!L" + i, Arrays.asList(canLearnNDS(sdName, "stealthrock"), canLearnNDS(sdName, "defog"), canLearnNDS(sdName, "rapidspin"), canLearnNDS(sdName, "voltswitch", "uturn", "flipturn", "batonpass", "teleport")));
int numInRound = d.originalOrder.get(d.round).indexOf(mem) + 1;
b.addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 2), numInRound * 5 + 1), "》》》》").addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 3), numInRound * 5 + 1), oldmonName).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 4), numInRound * 5 + 1), getGen5Sprite(oldmonName)).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 4), numInRound * 5 + 3), tierlist.prices.get(oldmon.getTier()));
b.addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 3), numInRound * 5 + 2), "《《《《").addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5 - 1), numInRound * 5 + 2), pokemon).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5), numInRound * 5 + 1), gen5Sprite).addSingle("Draft!%s%d".formatted(getAsXCoord(d.round * 5), numInRound * 5 + 3), tierlist.prices.get(newmon.getTier()));
logger.info("d.members.size() = " + d.members.size());
logger.info("d.order.size() = " + d.order.get(d.round).size());
logger.info("d.members.size() - d.order.size() = " + numInRound);
// if (d.members.size() - d.order.get(d.round).size() != 1 && isEnabled)
b.execute();
}
Aggregations