new gaypoints feature
This commit is contained in:
parent
69e93622b3
commit
6115e09602
10 changed files with 310 additions and 14 deletions
|
@ -5,6 +5,7 @@ WORKDIR /tmp/build
|
||||||
#install update system and install packages
|
#install update system and install packages
|
||||||
RUN apk update
|
RUN apk update
|
||||||
RUN apk upgrade --available
|
RUN apk upgrade --available
|
||||||
|
RUN apk add alpine-sdk
|
||||||
|
|
||||||
#build bloaterbot
|
#build bloaterbot
|
||||||
COPY . .
|
COPY . .
|
||||||
|
@ -12,6 +13,8 @@ RUN go mod download
|
||||||
|
|
||||||
RUN mkdir /app
|
RUN mkdir /app
|
||||||
|
|
||||||
|
ARG CGO_ENABLED=1
|
||||||
|
|
||||||
RUN go build -o /app/bloaterbot
|
RUN go build -o /app/bloaterbot
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
|
@ -7,16 +7,34 @@ import (
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
"watn3y/bloaterbotv3/botIO"
|
"watn3y/bloaterbotv3/botIO"
|
||||||
|
"watn3y/bloaterbotv3/commands/gaypoints"
|
||||||
"watn3y/bloaterbotv3/config"
|
"watn3y/bloaterbotv3/config"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Commands(update tgbotapi.Update, bot *tgbotapi.BotAPI) {
|
func Commands(update tgbotapi.Update, bot *tgbotapi.BotAPI) {
|
||||||
if strings.ToLower(update.Message.Command()) == "shutup" || strings.ToLower(update.Message.Command()) == "shut" {
|
|
||||||
config.BotConfig.Shutup[update.Message.Chat.ID] = time.Now().UTC()
|
|
||||||
msg := tgbotapi.NewMessage(update.Message.Chat.ID, "Shutting up")
|
|
||||||
|
|
||||||
log.Println("Shutting up for Chat: " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
cmd := strings.ToLower(update.Message.Command())
|
||||||
|
|
||||||
botIO.SendMessage(msg, bot)
|
switch cmd {
|
||||||
|
case "shutup":
|
||||||
|
shutup(update, bot)
|
||||||
|
case "shut":
|
||||||
|
shutup(update, bot)
|
||||||
|
case "gp":
|
||||||
|
gaypoints.GetGP(update, bot)
|
||||||
|
case "addgp":
|
||||||
|
gaypoints.SetGP(update, bot)
|
||||||
|
case "subtracktgp":
|
||||||
|
gaypoints.SetGP(update, bot)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func shutup(update tgbotapi.Update, bot *tgbotapi.BotAPI) {
|
||||||
|
config.BotConfig.Shutup[update.Message.Chat.ID] = time.Now().UTC()
|
||||||
|
msg := tgbotapi.NewMessage(update.Message.Chat.ID, "Shutting up")
|
||||||
|
|
||||||
|
log.Println("Shutting up for Chat: " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
|
||||||
|
botIO.SendMessage(msg, bot)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
167
commands/gaypoints/gaypoints.go
Normal file
167
commands/gaypoints/gaypoints.go
Normal file
|
@ -0,0 +1,167 @@
|
||||||
|
package gaypoints
|
||||||
|
|
||||||
|
import (
|
||||||
|
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
|
||||||
|
"log"
|
||||||
|
"strconv"
|
||||||
|
"strings"
|
||||||
|
"watn3y/bloaterbotv3/botIO"
|
||||||
|
"watn3y/bloaterbotv3/commonlogic"
|
||||||
|
"watn3y/bloaterbotv3/config"
|
||||||
|
)
|
||||||
|
|
||||||
|
func GetGP(update tgbotapi.Update, bot *tgbotapi.BotAPI) {
|
||||||
|
|
||||||
|
if !commonlogic.ContainsInt64(config.BotConfig.GayPoints.EnabledChats, update.Message.Chat.ID) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if update.Message.ReplyToMessage != nil {
|
||||||
|
log.Println("[gaypoints] Looking for gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
points := sqlGetGP(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID)
|
||||||
|
|
||||||
|
currentUser := botIO.GetUserByID(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID, bot)
|
||||||
|
currentName := currentUser.User.FirstName
|
||||||
|
if currentUser.User.UserName != "" {
|
||||||
|
currentName = currentUser.User.UserName
|
||||||
|
}
|
||||||
|
messagetext := `<a href="` + `tg://user?id=` + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + `">` + currentName + `</a>` + ` currently has ` + `<b>` + strconv.FormatInt(points, 10) + `</b>` + ` gaypoints` + "\n"
|
||||||
|
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: messagetext,
|
||||||
|
}
|
||||||
|
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Println("[gaypoints] Looking for gaypoints for chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
gps := sqlGetAllGP(update.Message.Chat.ID)
|
||||||
|
|
||||||
|
var messagetext string
|
||||||
|
for userid, points := range gps {
|
||||||
|
currentUser := botIO.GetUserByID(update.Message.Chat.ID, userid, bot)
|
||||||
|
currentName := currentUser.User.FirstName
|
||||||
|
if currentUser.User.UserName != "" {
|
||||||
|
currentName = currentUser.User.UserName
|
||||||
|
}
|
||||||
|
text := `<a href="` + `tg://user?id=` + strconv.FormatInt(userid, 10) + `">` + currentName + `</a>` + ` currently has ` + `<b>` + strconv.FormatInt(points, 10) + `</b>` + ` gaypoints` + "\n"
|
||||||
|
|
||||||
|
messagetext = messagetext + text
|
||||||
|
}
|
||||||
|
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: messagetext,
|
||||||
|
}
|
||||||
|
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func SetGP(update tgbotapi.Update, bot *tgbotapi.BotAPI) {
|
||||||
|
if !commonlogic.ContainsInt64(config.BotConfig.GayPoints.EnabledChats, update.Message.Chat.ID) || !commonlogic.ContainsInt64(config.BotConfig.GayPoints.ModifyUsers, update.Message.From.ID) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
cmd := strings.ToLower(update.Message.Command())
|
||||||
|
commandArgs := strings.Fields(update.Message.CommandArguments())
|
||||||
|
|
||||||
|
var arg string
|
||||||
|
|
||||||
|
if len(commandArgs) >= 1 {
|
||||||
|
arg = strings.ToLower(commandArgs[0])
|
||||||
|
} else {
|
||||||
|
arg = ""
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints] Trying to modify gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
|
||||||
|
if update.Message.ReplyToMessage == nil {
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: "Please reply to a message to set gaypoints",
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints] Failed to set gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if arg == "" {
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: "Please specify a valid gaypoint value",
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints] Failed to set gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
newPoints, err := strconv.ParseInt(arg, 10, 64)
|
||||||
|
if err != nil || newPoints <= 0 {
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: "Please specify a valid gaypoint value",
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints] Failed to set gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var finalgp int64
|
||||||
|
var currentPoints int64
|
||||||
|
|
||||||
|
if cmd == "addgp" {
|
||||||
|
currentPoints = sqlGetGP(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID)
|
||||||
|
if currentPoints <= -1 {
|
||||||
|
finalgp = newPoints
|
||||||
|
} else {
|
||||||
|
finalgp = currentPoints + newPoints
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if cmd == "subtracktgp" {
|
||||||
|
currentPoints = sqlGetGP(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID)
|
||||||
|
if currentPoints <= 0 {
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: "Please specify a valid gaypoint value",
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints] Failed to subtrackt gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10))
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
finalgp = currentPoints - newPoints
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Println("[gaypoints] Changing gaypoints for user " + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + " in chat " + strconv.FormatInt(update.Message.Chat.ID, 10) + " from " + strconv.FormatInt(currentPoints, 10) + " to " + strconv.FormatInt(finalgp, 10))
|
||||||
|
|
||||||
|
sqlSetGP(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID, finalgp)
|
||||||
|
|
||||||
|
currentUser := botIO.GetUserByID(update.Message.Chat.ID, update.Message.ReplyToMessage.From.ID, bot)
|
||||||
|
currentName := currentUser.User.FirstName
|
||||||
|
if currentUser.User.UserName != "" {
|
||||||
|
currentName = currentUser.User.UserName
|
||||||
|
}
|
||||||
|
message := tgbotapi.MessageConfig{
|
||||||
|
BaseChat: tgbotapi.BaseChat{ChatID: update.Message.Chat.ID, ReplyToMessageID: update.Message.MessageID},
|
||||||
|
ParseMode: "html",
|
||||||
|
DisableWebPagePreview: false,
|
||||||
|
Text: `<a href="` + `tg://user?id=` + strconv.FormatInt(update.Message.ReplyToMessage.From.ID, 10) + `">` + currentName + `</a>` + ` now has ` + `<b>` + strconv.FormatInt(finalgp, 10) + `</b>` + ` gaypoints` + "\n",
|
||||||
|
}
|
||||||
|
botIO.SendMessage(message, bot)
|
||||||
|
return
|
||||||
|
}
|
97
commands/gaypoints/sql.go
Normal file
97
commands/gaypoints/sql.go
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
package gaypoints
|
||||||
|
|
||||||
|
import (
|
||||||
|
"database/sql"
|
||||||
|
_ "github.com/mattn/go-sqlite3"
|
||||||
|
"log"
|
||||||
|
"strconv"
|
||||||
|
)
|
||||||
|
|
||||||
|
var gpSelectUser *sql.Stmt
|
||||||
|
|
||||||
|
var gpSelectChat *sql.Stmt
|
||||||
|
|
||||||
|
var gpSet *sql.Stmt
|
||||||
|
|
||||||
|
func sqlGetAllGP(chatid int64) (gaypoints map[int64]int64) {
|
||||||
|
rows, err := gpSelectChat.Query(chatid)
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to query gaypoints: %v\n", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
gaypoints = make(map[int64]int64)
|
||||||
|
var c int64
|
||||||
|
var b int64
|
||||||
|
for rows.Next() {
|
||||||
|
switch err := rows.Scan(&c, &b); err {
|
||||||
|
case sql.ErrNoRows:
|
||||||
|
gaypoints[c] = -1
|
||||||
|
case nil:
|
||||||
|
gaypoints[c] = b
|
||||||
|
default:
|
||||||
|
log.Panicf("Failed to query gaypoints: %v\n", err)
|
||||||
|
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints.sql] Got gaypoints for " + strconv.FormatInt(c, 10) + " in chat " + strconv.FormatInt(chatid, 10) + ". Value is " + strconv.FormatInt(b, 10))
|
||||||
|
}
|
||||||
|
|
||||||
|
return gaypoints
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
func sqlGetGP(chatid int64, userid int64) (gaypoints int64) {
|
||||||
|
row := gpSelectUser.QueryRow(chatid, userid)
|
||||||
|
|
||||||
|
switch err := row.Scan(&gaypoints); err {
|
||||||
|
case sql.ErrNoRows:
|
||||||
|
gaypoints = -1
|
||||||
|
case nil:
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
log.Panicf("Failed to query gaypoints: %v\n", err)
|
||||||
|
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints.sql] Got gaypoints for " + strconv.FormatInt(userid, 10) + " in chat " + strconv.FormatInt(chatid, 10) + ". Value is " + strconv.FormatInt(gaypoints, 10))
|
||||||
|
return gaypoints
|
||||||
|
}
|
||||||
|
|
||||||
|
func sqlSetGP(chatid int64, userid int64, gaypoints int64) {
|
||||||
|
_, err := gpSet.Exec(chatid, userid, gaypoints)
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to set gaypoints: %v\n", err)
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints.sql] Set gaypoints for " + strconv.FormatInt(userid, 10) + " in chat " + strconv.FormatInt(chatid, 10) + " to " + strconv.FormatInt(gaypoints, 10))
|
||||||
|
}
|
||||||
|
|
||||||
|
func InitDB() {
|
||||||
|
const dbPath string = "./bloater.db"
|
||||||
|
db, err := sql.Open("sqlite3", dbPath)
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to open sqlite database: %v\n", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
_, err = db.Exec("CREATE TABLE IF NOT EXISTS gaypoints (chatid bigint, userid bigint,gaypoints bigint,UNIQUE(chatid,userid))")
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to create table: %v\n", err)
|
||||||
|
}
|
||||||
|
log.Println("[gaypoints.sql] Created sqlite table in database at " + dbPath)
|
||||||
|
|
||||||
|
gpSelectUser, err = db.Prepare("SELECT gaypoints FROM gaypoints WHERE chatid = ? AND userid = ?")
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to prepare sql select: %v\n", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
gpSelectChat, err = db.Prepare("SELECT userid,gaypoints FROM gaypoints WHERE chatid = ? ORDER BY gaypoints DESC")
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to prepare sql select: %v\n", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
gpSet, err = db.Prepare("INSERT OR REPLACE INTO gaypoints (chatid, userid, gaypoints) values (?,?,?)")
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Panicf("Failed to prepare sql insert: %v\n", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,13 +1,18 @@
|
||||||
APIToken = "073fv3b07tvrudgbdf"
|
APIToken = "073fv3b07tvrudgbdf"
|
||||||
DebugMode = true
|
DebugMode = true
|
||||||
PrivilegedUsers = [1187583771]
|
PrivilegedUsers = [1212121212]
|
||||||
|
|
||||||
[Nhentai]
|
[Nhentai]
|
||||||
APIEndpoint = "0.0.0.0"
|
APIEndpoint = "0.0.0.0"
|
||||||
Domain = "https://nhentai.net"
|
Domain = "https://nhentai.net"
|
||||||
EnabledChats = [-1001737304244,-1001462089309,-1001616528600]
|
EnabledChats = [-00000,-111111,-22222]
|
||||||
|
|
||||||
[Balonlyl]
|
[Balonlyl]
|
||||||
EnabledChats = [-1001462089309]
|
EnabledChats = [-1001462089309]
|
||||||
BalonlylAT = "@Balonlyl"
|
BalonlylAT = "@Balonlyl"
|
||||||
TriggerWords = ["french","france","baguette","casque bleu"]
|
TriggerWords = ["french","france","baguette","casque bleu"]
|
||||||
|
|
||||||
|
|
||||||
|
[GayPoints]
|
||||||
|
EnabledChats = [-00000,-111111,-22222]
|
||||||
|
ModifyUsers = [-00000,-111111,-22222]
|
|
@ -22,6 +22,10 @@ type config struct {
|
||||||
BalonlylAT string
|
BalonlylAT string
|
||||||
TriggerWords []string
|
TriggerWords []string
|
||||||
}
|
}
|
||||||
|
GayPoints struct {
|
||||||
|
EnabledChats []int64
|
||||||
|
ModifyUsers []int64
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var BotConfig config
|
var BotConfig config
|
||||||
|
|
|
@ -6,6 +6,7 @@ services:
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /opt/bloaterbot/config.toml:/app/config.toml
|
- /opt/bloaterbot/config.toml:/app/config.toml
|
||||||
|
- /opt/bloaterbot/bloater.db:/app/bloater.db
|
||||||
networks:
|
networks:
|
||||||
- expose
|
- expose
|
||||||
networks:
|
networks:
|
||||||
|
|
7
go.mod
7
go.mod
|
@ -2,9 +2,8 @@ module watn3y/bloaterbotv3
|
||||||
|
|
||||||
go 1.20
|
go 1.20
|
||||||
|
|
||||||
require github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1
|
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/BurntSushi/toml v1.2.1 // indirect
|
github.com/BurntSushi/toml v1.2.1
|
||||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1
|
||||||
|
github.com/mattn/go-sqlite3 v1.14.16
|
||||||
)
|
)
|
||||||
|
|
4
go.sum
4
go.sum
|
@ -2,5 +2,5 @@ github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak
|
||||||
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
|
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
|
||||||
github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 h1:wG8n/XJQ07TmjbITcGiUaOtXxdrINDz1b0J1w0SzqDc=
|
github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 h1:wG8n/XJQ07TmjbITcGiUaOtXxdrINDz1b0J1w0SzqDc=
|
||||||
github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1/go.mod h1:A2S0CWkNylc2phvKXWBBdD3K0iGnDBGbzRpISP2zBl8=
|
github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1/go.mod h1:A2S0CWkNylc2phvKXWBBdD3K0iGnDBGbzRpISP2zBl8=
|
||||||
gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=
|
github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y=
|
||||||
gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
|
github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
|
||||||
|
|
2
main.go
2
main.go
|
@ -1,11 +1,13 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"watn3y/bloaterbotv3/commands/gaypoints"
|
||||||
"watn3y/bloaterbotv3/config"
|
"watn3y/bloaterbotv3/config"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
config.LoadConfig()
|
config.LoadConfig()
|
||||||
|
gaypoints.InitDB()
|
||||||
bot()
|
bot()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue