Skip to content

Commit

Permalink
fix(socket): chat warning users on any message
Browse files Browse the repository at this point in the history
  • Loading branch information
iGoodie committed Jun 30, 2020
1 parent ab1e8b1 commit 9fb7bc2
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 16 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Expand Up @@ -5,7 +5,7 @@ org.gradle.daemon=false

mod_id=twitchspawn
mod_group=net.programmer.igoodie
mod_version=0.6.4
mod_version=0.6.5

minecraft_version=1.12.2
forge_version=14.23.3.2655
Expand Down
Expand Up @@ -97,24 +97,25 @@ protected void onMessage(CredentialsConfig.Streamer streamer, WebSocket socket,
protected void onChatMessage(CredentialsConfig.Streamer streamer, TwitchChatMessage twitchChatMessage, WebSocket socket) {
CooldownBucket cooldownBucket = cooldownBuckets.get(streamer.twitchNick);

if (cooldownBucket.canConsume(twitchChatMessage.username)) {
EventArguments eventArguments = new EventArguments("chat", "twitch");
eventArguments.streamerNickname = streamer.minecraftNick;
eventArguments.actorNickname = twitchChatMessage.username;
eventArguments.message = twitchChatMessage.message;
eventArguments.subscriptionMonths = twitchChatMessage.subscriptionMonths;
eventArguments.chatBadges = twitchChatMessage.badges;
EventArguments eventArguments = new EventArguments("chat", "twitch");
eventArguments.streamerNickname = streamer.minecraftNick;
eventArguments.actorNickname = twitchChatMessage.username;
eventArguments.message = twitchChatMessage.message;
eventArguments.subscriptionMonths = twitchChatMessage.subscriptionMonths;
eventArguments.chatBadges = twitchChatMessage.badges;

if (cooldownBucket.hasGlobalCooldown()) {
TwitchSpawn.LOGGER.info("Still has {} seconds global cooldown.", cooldownBucket.getGlobalCooldown());

} else if (cooldownBucket.canConsume(twitchChatMessage.username)) {
ConfigManager.RULESET_COLLECTION.handleEvent(eventArguments, cooldownBucket);

} else {
TwitchSpawn.LOGGER.info("Still has {} seconds global cooldown.", cooldownBucket.getGlobalCooldown());
if (!cooldownBucket.hasGlobalCooldown()) {
socket.send("PRIVMSG #" + streamer.twitchNick.toLowerCase()
+ String.format(" :@%s, you still have %s second(s), before you can trigger another action",
twitchChatMessage.username, cooldownBucket.getCooldown(twitchChatMessage.username) / 1000));
}
} else if (ConfigManager.RULESET_COLLECTION.getRuleset(streamer.minecraftNick).willPerform(eventArguments)) {
socket.send("PRIVMSG #" + streamer.twitchNick.toLowerCase()
+ String.format(" :@%s, you still have %s second(s), before you can trigger another action",
twitchChatMessage.username, cooldownBucket.getCooldown(twitchChatMessage.username) / 1000));
}

}

public static void main(String[] args) {
Expand Down
Expand Up @@ -48,6 +48,13 @@ public Collection<TSLEvent> getEvents() {
return eventMap.values();
}

public boolean willPerform(EventArguments args) {
for (TSLEvent event : eventMap.values()) {
if (event.willPerform(args)) return true;
}
return false;
}

@Override
public String toString() {
Map<String, Integer> occurrences = new HashMap<>();
Expand All @@ -71,7 +78,7 @@ public String toString() {
StringBuilder builder = new StringBuilder();

occurrences.forEach((actionKeyword, occurrence) -> {
if(builder.length() != 0) builder.append("\n");
if (builder.length() != 0) builder.append("\n");
builder.append(String.format("%s action %d time(s).", actionKeyword, occurrence));
});

Expand Down

0 comments on commit 9fb7bc2

Please sign in to comment.