|
|
|
@ -92,27 +92,27 @@ func readReactions(s *discordgo.Session, m *discordgo.MessageReactionAdd) {
@@ -92,27 +92,27 @@ func readReactions(s *discordgo.Session, m *discordgo.MessageReactionAdd) {
|
|
|
|
|
} else { |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, m.Emoji.ID, m.UserID) |
|
|
|
|
} |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, fingeyEmoji, "@me") |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, freezingEmoji, "@me") |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, spiritBoxEmoji, "@me") |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, ghostWritingEmoji, "@me") |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, emf5Emoji, "@me") |
|
|
|
|
go s.MessageReactionRemove(m.ChannelID, g.PostID, ghostOrbsEmoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, fingeyEmoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, freezingEmoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, spiritBoxEmoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, ghostWritingEmoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, emf5Emoji, "@me") |
|
|
|
|
s.MessageReactionRemove(m.ChannelID, g.PostID, ghostOrbsEmoji, "@me") |
|
|
|
|
g.EliminateGhosts(g.Evidence[len(g.Evidence)-1]) |
|
|
|
|
for _, v := range g.PossibleEvidence { |
|
|
|
|
switch v { |
|
|
|
|
case 0: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, emf5Emoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, emf5Emoji) |
|
|
|
|
case 1: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, freezingEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, freezingEmoji) |
|
|
|
|
case 2: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, spiritBoxEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, spiritBoxEmoji) |
|
|
|
|
case 3: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, ghostWritingEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, ghostWritingEmoji) |
|
|
|
|
case 4: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, fingeyEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, fingeyEmoji) |
|
|
|
|
case 5: |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, g.PostID, ghostOrbsEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, g.PostID, ghostOrbsEmoji) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if len(g.Evidence) == 3 { |
|
|
|
@ -134,7 +134,9 @@ func messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
@@ -134,7 +134,9 @@ func messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
|
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
if _, ok := games[m.ChannelID]; !ok || strings.HasPrefix(m.Content, "!reset") { |
|
|
|
|
games[m.ChannelID] = Game{} |
|
|
|
|
games[m.ChannelID] = Game{ |
|
|
|
|
Identifier: m.ChannelID, |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
g := games[m.ChannelID] |
|
|
|
|
parts := strings.Split(m.Content, " ") |
|
|
|
@ -192,60 +194,60 @@ func messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
@@ -192,60 +194,60 @@ func messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
|
|
|
|
|
} |
|
|
|
|
if strings.HasPrefix(m.Content, "!c") { |
|
|
|
|
if strings.Contains(m.Content, "emf") { |
|
|
|
|
g.CompleteObjective(EMF) |
|
|
|
|
g.CompleteObjective(EMF, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "photo") { |
|
|
|
|
g.CompleteObjective(Photo) |
|
|
|
|
g.CompleteObjective(Photo, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "event") { |
|
|
|
|
g.CompleteObjective(Event) |
|
|
|
|
g.CompleteObjective(Event, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "crucifix") { |
|
|
|
|
g.CompleteObjective(Crucifix) |
|
|
|
|
g.CompleteObjective(Crucifix, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "motion") { |
|
|
|
|
g.CompleteObjective(Motion) |
|
|
|
|
g.CompleteObjective(Motion, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "clean") { |
|
|
|
|
g.CompleteObjective(SmudgeCleanse) |
|
|
|
|
g.CompleteObjective(SmudgeCleanse, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "hunt") { |
|
|
|
|
g.CompleteObjective(SmudgeHunt) |
|
|
|
|
g.CompleteObjective(SmudgeHunt, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "salt") { |
|
|
|
|
g.CompleteObjective(Salt) |
|
|
|
|
g.CompleteObjective(Salt, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "candle") { |
|
|
|
|
g.CompleteObjective(Candle) |
|
|
|
|
g.CompleteObjective(Candle, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "sanity") { |
|
|
|
|
g.CompleteObjective(LowSanity) |
|
|
|
|
g.CompleteObjective(LowSanity, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "escape") { |
|
|
|
|
g.CompleteObjective(MemberEscape) |
|
|
|
|
g.CompleteObjective(MemberEscape, s) |
|
|
|
|
} |
|
|
|
|
if strings.Contains(m.Content, "death") { |
|
|
|
|
g.CompleteObjective(NoDeaths) |
|
|
|
|
g.CompleteObjective(NoDeaths, s) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if len(g.Objective) == 3 && g.PostID == "" { |
|
|
|
|
post, _ := s.ChannelMessageSend(m.ChannelID, "The investigation begins! Click below to log evidence.") |
|
|
|
|
g.PossibleGhosts = append(g.PossibleGhosts, ghostTypes...) |
|
|
|
|
g.PostID = post.ID |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, fingeyEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, freezingEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, spiritBoxEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, ghostWritingEmoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, emf5Emoji) |
|
|
|
|
s.MessageReactionAdd(m.ChannelID, post.ID, ghostOrbsEmoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, fingeyEmoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, freezingEmoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, spiritBoxEmoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, ghostWritingEmoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, emf5Emoji) |
|
|
|
|
go s.MessageReactionAdd(m.ChannelID, post.ID, ghostOrbsEmoji) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
games[m.ChannelID] = g |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (g *Game) CompleteObjective(objective int) { |
|
|
|
|
func (g *Game) CompleteObjective(objective int, s *discordgo.Session) { |
|
|
|
|
var tasks []int |
|
|
|
|
ret := "Current objectives: ```" |
|
|
|
|
ret := "Current objectives: ``` \n" |
|
|
|
|
for _, v := range g.Objective { |
|
|
|
|
if v != objective { |
|
|
|
|
tasks = append(tasks, v) |
|
|
|
@ -253,8 +255,13 @@ func (g *Game) CompleteObjective(objective int) {
@@ -253,8 +255,13 @@ func (g *Game) CompleteObjective(objective int) {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
ret += "```" |
|
|
|
|
msg, _ := dg.ChannelMessageSend(g.Identifier, ret) |
|
|
|
|
dg.MessageReactionAdd(g.Identifier, msg.ID, deleteEmoji) |
|
|
|
|
msg, err := s.ChannelMessageSend(g.Identifier, ret) |
|
|
|
|
if err == nil { |
|
|
|
|
s.MessageReactionAdd(g.Identifier, msg.ID, deleteEmoji) |
|
|
|
|
} else { |
|
|
|
|
fmt.Println(err) |
|
|
|
|
fmt.Println(ret) |
|
|
|
|
} |
|
|
|
|
g.Objective = tasks |
|
|
|
|
games[g.Identifier] = *g |
|
|
|
|
} |
|
|
|
|