message parsing

This commit is contained in:
Cynthia Foxwell 2023-07-08 22:42:58 -06:00
parent 7a69523b09
commit 6b5857d382
6 changed files with 257 additions and 28 deletions

View file

@ -1,12 +1,13 @@
package events
import (
"github.com/Cynosphere/comcord/lib"
"github.com/Cynosphere/comcord/state"
"github.com/bwmarrin/discordgo"
)
func MessageCreate(session *discordgo.Session, msg *discordgo.MessageCreate) {
if (msg.Author.ID == session.State.User.ID) {
if msg.Author.ID == session.State.User.ID {
return
}
@ -15,13 +16,15 @@ func MessageCreate(session *discordgo.Session, msg *discordgo.MessageCreate) {
return
}
isDM := channel.Type == discordgo.ChannelTypeDM || channel.Type == discordgo.ChannelTypeGroupDM
if state.IsInPrompt() {
state.AddMessageToQueue(*msg.Message)
state.AddMessageToQueue(msg.Message)
} else {
// TODO
lib.ProcessMessage(session, msg.Message, lib.MessageOptions{NoColor: state.HasNoColor()})
}
if channel.Type == discordgo.ChannelTypeDM || channel.Type == discordgo.ChannelTypeGroupDM {
if isDM {
state.SetLastDM(msg.ChannelID)
}
}

View file

@ -9,23 +9,15 @@ import (
)
func Ready(session *discordgo.Session, event *discordgo.Ready) {
fmt.Printf("\rLogged in as: %s%s (%s)%s\n\r", ansi.ColorCode("yellow"), session.State.User.Username, session.State.User.ID, ansi.ColorCode("reset"))
fmt.Printf("\rLogged in as: %s\n\r", ansi.Color(fmt.Sprintf("%s (%s)", session.State.User.Username, session.State.User.ID), "yellow"))
state.SetNameLength(len(session.State.User.Username) + 2)
defaultGuild := state.GetConfigValue("defaultGuild")
defaultChannel := state.GetConfigValue("defaultChannel")
if defaultGuild != "" {
//var guild discordgo.Guild
hasGuild := false
for _, g := range session.State.Guilds {
if g.ID == defaultGuild {
//guild = *g
hasGuild = true
break
}
}
if hasGuild {
_, err := session.State.Guild(defaultGuild)
if err == nil {
if defaultChannel != "" {
state.SetCurrentChannel(defaultChannel)
state.SetLastChannel(defaultGuild, defaultChannel)