From f8f7da328ee1820ee6acecd68ce05437b9faaaa9 Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 19:16:20 +0300 Subject: [PATCH 1/8] add clearstats method --- src/controllers/duelController.go | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index 813aa04..f7e2bec 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -38,6 +38,17 @@ func NewDuel(bot *tele.Bot, dc *DataController) *DuelController { } } +func (s *DuelController) ClearStats() { + s.Inited = false + s.PlayerOne.Counter = 0 + s.PlayerTwo.Counter = 0 + s.PlayerOne.FName = "" + s.PlayerTwo.FName = "" + s.Summ = 0 + s.PlayerOne.ID = 0 + s.PlayerTwo.ID = 0 +} + // Start Match func (s *DuelController) StartMatch(c tele.Context) error { if s.Inited { @@ -48,19 +59,22 @@ func (s *DuelController) StartMatch(c tele.Context) error { if strings.Contains(c.Text(), " ") { text = strings.Split(c.Text(), " ")[1] - fmt.Println("new command", text) + fmt.Println("Ставка текст", text) } else { + s.ClearStats() return c.Send("Некоректная команда, используйте /duel <сумма>") } summ, err := strconv.Atoi(text) if err != nil { + s.ClearStats() return c.Send("Некорректная команда, используйте /duel <сумма>") } else { s.Summ = summ } if summ <= 0 { + s.ClearStats() return c.Send("Некорректная сумма, используйте положительное значение!") } @@ -71,6 +85,7 @@ func (s *DuelController) StartMatch(c tele.Context) error { user := s.DC.GetUser(s.PlayerOne.ID) if user.DickSize < summ { + s.ClearStats() return c.Send("У вас недостаточно длинный пенис для состязания!") } @@ -80,6 +95,7 @@ func (s *DuelController) StartMatch(c tele.Context) error { // Accept Match func (s *DuelController) AcceptMatch(c tele.Context) error { if !s.Inited { + s.ClearStats() return c.Send("Дуэль еще не началась! Дождитесь старта матча или начните новую дуель с помощью /duel <сумма>") } @@ -89,10 +105,12 @@ func (s *DuelController) AcceptMatch(c tele.Context) error { user := s.DC.GetUser(s.PlayerTwo.ID) if user.DickSize < s.Summ { + s.ClearStats() return c.Send("У вас недостаточно длинный пенис для состязания!") } if s.PlayerTwo.ID == s.PlayerOne.ID { + s.ClearStats() return c.Send("Вы не можете принять участие в своей же дуэли!") } @@ -163,8 +181,5 @@ func (s *DuelController) CheckWin(r tele.Recipient) { s.Bot.Send(r, "Ничья!") } - s.PlayerOne.Counter = 0 - s.PlayerTwo.Counter = 0 - s.Summ = 0 - s.Inited = false + s.ClearStats() } From 62795aa172f7a413c6b0d4b7c2b8dbecfc87b433 Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 19:23:03 +0300 Subject: [PATCH 2/8] add --- src/controllers/duelController.go | 44 ++++++++++--------------------- 1 file changed, 14 insertions(+), 30 deletions(-) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index f7e2bec..e7261bd 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -38,17 +38,6 @@ func NewDuel(bot *tele.Bot, dc *DataController) *DuelController { } } -func (s *DuelController) ClearStats() { - s.Inited = false - s.PlayerOne.Counter = 0 - s.PlayerTwo.Counter = 0 - s.PlayerOne.FName = "" - s.PlayerTwo.FName = "" - s.Summ = 0 - s.PlayerOne.ID = 0 - s.PlayerTwo.ID = 0 -} - // Start Match func (s *DuelController) StartMatch(c tele.Context) error { if s.Inited { @@ -56,46 +45,40 @@ func (s *DuelController) StartMatch(c tele.Context) error { } var text string + user := s.DC.GetUser(s.PlayerOne.ID) if strings.Contains(c.Text(), " ") { text = strings.Split(c.Text(), " ")[1] - fmt.Println("Ставка текст", text) + fmt.Println("Ставка", text) } else { - s.ClearStats() return c.Send("Некоректная команда, используйте /duel <сумма>") } summ, err := strconv.Atoi(text) if err != nil { - s.ClearStats() return c.Send("Некорректная команда, используйте /duel <сумма>") } else { - s.Summ = summ - } + if user.DickSize < summ { + return c.Send("У вас недостаточно длинный пенис для состязания!") + } - if summ <= 0 { - s.ClearStats() - return c.Send("Некорректная сумма, используйте положительное значение!") + if summ <= 0 { + s.Summ = summ + } else { + return c.Send("Некорректная сумма, используйте положительное значение!") + } } s.Inited = true s.PlayerOne.ID = c.Sender().ID s.PlayerOne.FName = c.Sender().FirstName - user := s.DC.GetUser(s.PlayerOne.ID) - - if user.DickSize < summ { - s.ClearStats() - return c.Send("У вас недостаточно длинный пенис для состязания!") - } - return c.Send(fmt.Sprintf("%s начал дуель, ставка: %d", s.PlayerOne.FName, summ)) } // Accept Match func (s *DuelController) AcceptMatch(c tele.Context) error { if !s.Inited { - s.ClearStats() return c.Send("Дуэль еще не началась! Дождитесь старта матча или начните новую дуель с помощью /duel <сумма>") } @@ -105,12 +88,10 @@ func (s *DuelController) AcceptMatch(c tele.Context) error { user := s.DC.GetUser(s.PlayerTwo.ID) if user.DickSize < s.Summ { - s.ClearStats() return c.Send("У вас недостаточно длинный пенис для состязания!") } if s.PlayerTwo.ID == s.PlayerOne.ID { - s.ClearStats() return c.Send("Вы не можете принять участие в своей же дуэли!") } @@ -181,5 +162,8 @@ func (s *DuelController) CheckWin(r tele.Recipient) { s.Bot.Send(r, "Ничья!") } - s.ClearStats() + s.PlayerOne.Counter = 0 + s.PlayerTwo.Counter = 0 + s.Summ = 0 + s.Inited = false } From ea0197e516a5406c7aee71592e59a58a63c67af2 Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 19:27:08 +0300 Subject: [PATCH 3/8] fix --- src/controllers/duelController.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index e7261bd..09737e0 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -82,6 +82,10 @@ func (s *DuelController) AcceptMatch(c tele.Context) error { return c.Send("Дуэль еще не началась! Дождитесь старта матча или начните новую дуель с помощью /duel <сумма>") } + if s.Summ <= 0 { + return c.Send("Некорректная сумма, используйте положительное значение!") + } + s.PlayerTwo.ID = c.Sender().ID s.PlayerTwo.FName = c.Sender().FirstName From 56339f5e596506f1ab843feebe95392a97ed06db Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 19:38:20 +0300 Subject: [PATCH 4/8] fix --- src/controllers/duelController.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index 09737e0..a976a5d 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -42,12 +42,14 @@ func NewDuel(bot *tele.Bot, dc *DataController) *DuelController { func (s *DuelController) StartMatch(c tele.Context) error { if s.Inited { return c.Send(fmt.Sprintf("Дуэль уже началась!\nИгрок: %s\nСтавка: %d", s.PlayerOne.FName, s.Summ)) + } else { + s.Inited = true } var text string user := s.DC.GetUser(s.PlayerOne.ID) - if strings.Contains(c.Text(), " ") { + if strings.Contains(c.Data(), " ") { text = strings.Split(c.Text(), " ")[1] fmt.Println("Ставка", text) } else { @@ -62,14 +64,13 @@ func (s *DuelController) StartMatch(c tele.Context) error { return c.Send("У вас недостаточно длинный пенис для состязания!") } - if summ <= 0 { + if summ > 0 { s.Summ = summ } else { return c.Send("Некорректная сумма, используйте положительное значение!") } } - s.Inited = true s.PlayerOne.ID = c.Sender().ID s.PlayerOne.FName = c.Sender().FirstName @@ -79,7 +80,7 @@ func (s *DuelController) StartMatch(c tele.Context) error { // Accept Match func (s *DuelController) AcceptMatch(c tele.Context) error { if !s.Inited { - return c.Send("Дуэль еще не началась! Дождитесь старта матча или начните новую дуель с помощью /duel <сумма>") + return c.Send("Дуэль еще не началась! Дождитесь старта или начните новую дуель с помощью /duel <сумма>") } if s.Summ <= 0 { From 897eb26bacb7cb91755ccee4b51b042d05a46ef7 Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 19:40:22 +0300 Subject: [PATCH 5/8] fix --- src/controllers/duelController.go | 1 + 1 file changed, 1 insertion(+) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index a976a5d..3d15f9c 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -67,6 +67,7 @@ func (s *DuelController) StartMatch(c tele.Context) error { if summ > 0 { s.Summ = summ } else { + s.Inited = false return c.Send("Некорректная сумма, используйте положительное значение!") } } From d0a5af881f26f8347444b1cf1645fb056ab0f296 Mon Sep 17 00:00:00 2001 From: SmileRex <78729299+RexReposit@users.noreply.github.com> Date: Fri, 24 Jan 2025 19:55:13 +0300 Subject: [PATCH 6/8] Update README.md --- README.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 327b9df..3cb899f 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,15 @@ -### Сборка -```go build``` - -### Docker -```docker build -t smilerex/dickbot:latest .``` - - -## ENVIRONMENT -```Go -os.Getenv("BOT_TOKEN") -os.Getenv("DB_HOST") -os.Getenv("DB_NAME") -os.Getenv("DB_USER") -os.Getenv("DB_PASS") +### docker-compose.yml +``` +version: '3' + +services: + bot: + image: smilerex/dickbot:latest + restart: always + environment: + - BOT_TOKEN=8001588893:AAFZl1beIZQbmT87MQ416Vt596QxNbqD_bY + - DB_HOST=217.12.40.237 + - DB_NAME=test + - DB_USER=root + - DB_PASS=12641264 ``` From 0244e508d4d2c778f21ad968c6d6728a6db9c4d1 Mon Sep 17 00:00:00 2001 From: SmileRex <78729299+RexReposit@users.noreply.github.com> Date: Fri, 24 Jan 2025 19:56:42 +0300 Subject: [PATCH 7/8] Update README.md --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3cb899f..5bce0b3 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ services: image: smilerex/dickbot:latest restart: always environment: - - BOT_TOKEN=8001588893:AAFZl1beIZQbmT87MQ416Vt596QxNbqD_bY - - DB_HOST=217.12.40.237 - - DB_NAME=test - - DB_USER=root - - DB_PASS=12641264 + - BOT_TOKEN= + - DB_HOST= + - DB_NAME= + - DB_USER= + - DB_PASS= ``` From 93ac48e4fced3e5d7cb93b8888136783d0615645 Mon Sep 17 00:00:00 2001 From: Smile Rex Date: Fri, 24 Jan 2025 20:18:13 +0300 Subject: [PATCH 8/8] =?UTF-8?q?=D0=A1=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D1=82=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=B7?= =?UTF-8?q?=D0=B0=D0=BC=D0=B5=D0=BD=D1=8F=D1=8E=D1=82=D1=81=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/controllers/duelController.go | 47 ++++++++++++------------------- 1 file changed, 18 insertions(+), 29 deletions(-) diff --git a/src/controllers/duelController.go b/src/controllers/duelController.go index 3d15f9c..c44c10b 100644 --- a/src/controllers/duelController.go +++ b/src/controllers/duelController.go @@ -42,8 +42,6 @@ func NewDuel(bot *tele.Bot, dc *DataController) *DuelController { func (s *DuelController) StartMatch(c tele.Context) error { if s.Inited { return c.Send(fmt.Sprintf("Дуэль уже началась!\nИгрок: %s\nСтавка: %d", s.PlayerOne.FName, s.Summ)) - } else { - s.Inited = true } var text string @@ -53,27 +51,24 @@ func (s *DuelController) StartMatch(c tele.Context) error { text = strings.Split(c.Text(), " ")[1] fmt.Println("Ставка", text) } else { + s.Inited = false return c.Send("Некоректная команда, используйте /duel <сумма>") } summ, err := strconv.Atoi(text) if err != nil { + s.Inited = false return c.Send("Некорректная команда, используйте /duel <сумма>") - } else { - if user.DickSize < summ { - return c.Send("У вас недостаточно длинный пенис для состязания!") - } + } - if summ > 0 { - s.Summ = summ - } else { - s.Inited = false - return c.Send("Некорректная сумма, используйте положительное значение!") - } + if user.DickSize < summ { + s.Inited = false + return c.Send("У вас недостаточно длинный пенис для состязания!") } s.PlayerOne.ID = c.Sender().ID s.PlayerOne.FName = c.Sender().FirstName + s.Inited = true return c.Send(fmt.Sprintf("%s начал дуель, ставка: %d", s.PlayerOne.FName, summ)) } @@ -109,44 +104,38 @@ func (s *DuelController) AcceptMatch(c tele.Context) error { // Start Game func (s *DuelController) gameProccess(r tele.Recipient) { - time.Sleep(time.Second * 3) - s.Bot.Send(r, fmt.Sprintf("Дуэль началась!\nНа кону: %d", s.Summ)) - s.RoundOne(r) -} + msg, _ := s.Bot.Send(r, fmt.Sprintf("Дуэль началась!\nНа кону: %d", s.Summ)) -// Round One -func (s *DuelController) RoundOne(r tele.Recipient) { + // round 1 time.Sleep(time.Second * 3) + s.PlayerOne.Counter += rand.Intn(11) + 1 s.PlayerTwo.Counter += rand.Intn(11) + 1 - s.Bot.Send(r, + s.Bot.Edit(msg, fmt.Sprintf("Результаты первого раунда\n%s: %d очков.\n%s: %d очков.", s.PlayerOne.FName, s.PlayerOne.Counter, s.PlayerTwo.FName, s.PlayerTwo.Counter), ) - s.RoundTwo(r) -} -// Round Two -func (s *DuelController) RoundTwo(r tele.Recipient) { + // round 2 time.Sleep(time.Second * 3) + s.PlayerOne.Counter += rand.Intn(11) + 1 s.PlayerTwo.Counter += rand.Intn(11) + 1 - s.Bot.Send(r, + s.Bot.Edit(msg, fmt.Sprintf("Результаты второго раунда\n%s: %d очков.\n%s: %d очков.", s.PlayerOne.FName, s.PlayerOne.Counter, s.PlayerTwo.FName, s.PlayerTwo.Counter), ) - s.RoundThree(r) -} -// Round Three -func (s *DuelController) RoundThree(r tele.Recipient) { + // round 3 time.Sleep(time.Second * 3) + s.PlayerOne.Counter += rand.Intn(11) + 1 s.PlayerTwo.Counter += rand.Intn(11) + 1 - s.Bot.Send(r, + s.Bot.Edit(msg, fmt.Sprintf("Результаты третьего раунда\n%s: %d очков.\n%s: %d очков.", s.PlayerOne.FName, s.PlayerOne.Counter, s.PlayerTwo.FName, s.PlayerTwo.Counter), ) + s.CheckWin(r) }