Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions src/main/java/org/jointheleague/discord_bot_example/Bot.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ public void connect(boolean printInvite) {
api.addMessageCreateListener(dl);
helpListener.addHelpEmbed(dl.getHelpEmbed());

CurrencyConverter cc = new CurrencyConverter(channelName);
api.addMessageCreateListener(cc);
helpListener.addHelpEmbed(cc.getHelpEmbed());
// CurrencyConverter cc = new CurrencyConverter(channelName);
// api.addMessageCreateListener(cc);
// helpListener.addHelpEmbed(cc.getHelpEmbed());

ToDoList list = new ToDoList(channelName);
api.addMessageCreateListener(list);
Expand Down Expand Up @@ -143,10 +143,15 @@ public void connect(boolean printInvite) {
UnbeatableRockPaperScissors rps = new UnbeatableRockPaperScissors(channelName);
api.addMessageCreateListener(rps);
helpListener.addHelpEmbed(rps.getHelpEmbed());

Depression depress = new Depression(channelName);
api.addMessageCreateListener(depress);
helpListener.addHelpEmbed(depress.getHelpEmbed());

CompareBrand cb = new CompareBrand(channelName);
api.addMessageCreateListener(cb);
helpListener.addHelpEmbed(cb.getHelpEmbed());


//old way to add listeners
api.addMessageCreateListener(helpListener);
Expand Down
147 changes: 147 additions & 0 deletions src/main/java/org/jointheleague/modules/CompareBrand.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
package org.jointheleague.modules;

import org.javacord.api.event.message.MessageCreateEvent;
import org.jointheleague.modules.pojo.HelpEmbed;

import net.aksingh.owmjapis.api.APIException;

public class CompareBrand extends CustomMessageCreateListener {
Car[] cars = { new Car("Acura ILX", 5, 201, 26100), new Car("Acura MDX", 7, 2090, 46900),
new Car("Acura TLX", 5, 272, 37500), new Car("Acura RDX", 5, 272, 38400),
new Car("Alfa Romeo Stelvio", 5, 280, 42350), new Car("Alfa Romeo Giulia", 5, 280, 42350),
new Car("Audi Q3", 5, 228, 34000), new Car("Audi Q5", 5, 362, 43300), new Car("Audi Q7", 7, 335, 54950),
new Car("Audi Q8", 5, 335, 68200), new Car("Audi E-Tron", 5, 402, 65900), new Car("Audi A3", 5, 184, 33300),
new Car("Audi A4", 5, 261, 39100), new Car("Audi A5", 5, 261, 44000), new Car("Audi A6", 5, 335, 54900),
new Car("Audi A7", 5, 335, 69200), new Car("Audi A8", 5, 453, 86500), new Car("BMW X1", 5, 228, 35400),
new Car("BMW X2", 5, 228, 36600), new Car("BMW X3", 5, 248, 43000), new Car("BMW X4", 5, 245, 51600),
new Car("BMW X5", 5, 335, 59400), new Car("BMW X6", 5, 335, 65050), new Car("BMW X7", 5, 335, 74900),
new Car("BMW 2", 5, 228, 35900) };
String possibilities = "";
private static final String COMMAND = "/compare";
int budget = 0;
boolean hasBudget = false;
int seats = 0;
boolean hasSeats = false;
int horsepower = 0;
boolean hasHorsies = false;
boolean matchess = false;

public CompareBrand(String channelName) {
super(channelName);
helpEmbed = new HelpEmbed(COMMAND,
"Type /compare and followed by budget/seats/horsepower followed by a parameter. you can do all 3 at once. Ex: /compare horsepower 2 seats 1 budget 200000");
}

@Override
public void handle(MessageCreateEvent event) throws APIException {
// TODO Auto-generated method stub
String[] str = event.getMessageContent().split(" ");
budget = 0;
hasBudget = false;
seats = 0;
hasSeats = false;
horsepower = 0;
hasHorsies = false;
if (str[0].equals(COMMAND)) {
if(event.getMessageContent().contains("help") && str.length == 2) {
event.getChannel().sendMessage("Type /compare and followed by budget/seats/horsepower followed by a parameter. you can do all 3 at once. Ex: /compare horsepower 2 seats 1 budget 200000");
}
for (int i = 0; i < str.length; i++) {
if (str[i].contains("budget") && str.length > 2 && !event.getMessageContent().contains("help")) {
try {
budget = Integer.parseInt(str[i + 1]);
hasBudget = true;
} catch(Exception bad) {
event.getChannel().sendMessage("The budget should only include numbers!");
}
} else if (str[i].contains("seats") && str.length > 2 && !event.getMessageContent().contains("help")) {
try {
seats = Integer.parseInt(str[i + 1]);
hasSeats = true;
} catch(Exception no) {
event.getChannel().sendMessage("seats aren't letters! They are numerical!");
}
} else if (str[i].contains("horsepower") && str.length > 2 && !event.getMessageContent().contains("help")) {
try {
horsepower = Integer.parseInt(str[i + 1]);
hasHorsies = true;
} catch(Exception e) {
event.getChannel().sendMessage("horsepower should only be explained in numbers >:(");
}
}
}
event.getChannel().sendMessage(printCar());
if(matchess == false) {
event.getChannel().sendMessage("your search results didn't pull anything up. Horse power should be no less than 350, seats no less than 6, and budget no less than around 34000");
}
}
}

public String printCar() {
boolean hpMet = false;
boolean budgetMet = false;
boolean seatsMet = false;
String matches = "";
for (int i = 0; i < cars.length; i++) {
if (hasBudget) {
budgetMet = cars[i].checkPrice(budget);
}
if (hasHorsies) {
hpMet = cars[i].checkHp(horsepower);
}
if (hasSeats) {
seatsMet = cars[i].checkSeats(seats);
}
if ((budgetMet || !hasBudget) && (hpMet || !hasHorsies) && (seatsMet || !hasSeats)) {
matches += cars[i].toString() + "\n";
}
}
if(!matches.isEmpty()) {
matchess = true;
} else {
matchess = false;
}
return matches;
}
}
// TODO: Find 2021 car brand models and write down a few's seats, and
// horsepower, cost and put into a text file

class Car {
int seats = 0;
int hp = 0;
int price = 0;
String name = "";

Car(String name, int seats, int horsePower, int price) {
this.seats = seats;
hp = horsePower;
this.price = price;
this.name = name;
}

public boolean checkHp(int hpLimit) {
if (hp <= hpLimit) {
return true;
}
return false;
}

public boolean checkSeats(int seatLimit) {
if (seats <= seatLimit) {
return true;
}
return false;
}

public boolean checkPrice(int priceLimit) {
if (price <= priceLimit) {
return true;
}
return false;
}

public String toString() {
return name;
}
}
2 changes: 1 addition & 1 deletion src/main/java/org/jointheleague/modules/MazeGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public void handle(MessageCreateEvent event) throws APIException {
System.out.println("Heard message: " + event.getMessageContent());
if (event.getMessageContent().contains(COMMAND) && !event.getMessageAuthor().isBotUser()) {
if (event.getMessageContent().contains("start") || event.getMessageContent().contains("load")) {
String target = event.getMessageContent().substring(11).strip();
String target = event.getMessageContent().substring(11).trim();

try {
if(!target.equalsIgnoreCase("upload")) {
Expand Down