[DAY 16]用bot打出色色柴犬counter牌

最近很夯的色色柴犬大家应该有听过吧

没错就是这一系列牌组

然後某一天晚上不知道我发什麽神经突然有个念头想写个别人留言"可以色色"、"不可以色色"时拿对应的牌去康特他的想法

然後回过神来时发现频道上已经出现下面画面

实现原理很简单,目前的牌组发动条件主要有三种

  1. 可以色色
  2. 不可以色色
  3. 复数条件

前两种用一般的判断式写就可以了,每个判断里面我有放该种类图档的list随机抽取一张

第三种的发动条件像色色武士要"可以色色"跟"不可以色色"同时在场才会出现

这种类型的牌要另外处理

所以我有在程序码加个table list

当留言出现"可以色色"跟"不可以色色"出现时会把这两个字串加进table list里面

发动过後台面上的牌全部清掉

这边举个范例

现在想想那天我一定是喝多了才会做出这鬼东西

附上用cog架构写的程序码,cog架构可参考我之前写的文章

import pandas as pd
from discord.ext import commands
from core.classes import Cog_Extension
import discord
from random import choice

class main(Cog_Extension):
    def __init__(self,*args,**kwargs):
        super().__init__(*args,**kwargs)
        self.table=[]
        self.nohokh = ["https://i.imgur.com/cZksr04.jpg","https://i.imgur.com/wH4CJLF.jpg","https://i.imgur.com/ag0DVMT.jpg"]
    @commands.Cog.listener()
    #当有讯息时
    async def on_message(self,message):
        embed = discord.Embed()
        #排除自己的讯息,避免陷入无限循环
        if message.author == self.bot.user:
            return
        
        
        #不可以色色排组对应图片
        if message.content.startswith("不可以色色"):
            if "可以色色" and "不可以色色" in self.table:
                self.table=[]
                await message.reply(choice(self.nohokh))#特招
            else:
                noh = ["https://imgur.dcard.tw/TUGMyF7h.jpg","https://imgur.dcard.tw/ZayW5My.jpg","https://i.imgur.com/WLbQBlT.jpg","https://i.imgur.com/nGI4pbO.jpg","https://i.imgur.com/jrOvlgH.jpg","https://i.imgur.com/68mqoce.jpg"]
                self.table.append("不可以色色")
                await message.reply(choice(noh))#不可以色色康特
            # await message.channel.send(embed=embed)
        elif message.content.startswith("可以色色"):
            if "可以色色" and "不可以色色" in self.table:
                self.table=[]
                await message.reply(choice(self.nohokh))#特招
            else:
                okh = ["https://i.imgur.com/UVZti2m.jpg","https://i.imgur.com/FoGDvP7.jpg","https://i.imgur.com/c2pDzLJ.jpg","https://i.imgur.com/0Ux7atA.jpg","https://i.imgur.com/hnnSpzr.jpg","https://i.imgur.com/F03Raad.jpg"]
                self.table.append("可以色色")
                await message.reply(choice(okh))#可以色色康特
        


def setup(bot):
    bot.add_cog(main(bot))

<<:  [Day16] 注册工具Postman – 安装、介绍Postman

>>:  [Day23]Virtual Service

【Day 30】- 结语 : 从 0 开始的网路爬虫

结语   完成了连续一个月的铁人赛了!当初觉得每天发一篇应该不会太难,甚至还在开赛前屯了四篇,结果事...

从零开始学3D游戏设计:触发式按钮

这是 Roblox 从零开始系列,使用者介面章节的第四个单元,你将学会如何去制作当触发某些条件时才会...

[DAY15] Azure Machine Learning 里的多人协作---谈 RBAC

DAY15 Azure Machine Learning 里的多人协作---谈 RBAC 铁人赛已经...

【图解AWS教学 - IAM - 整体架构】

Youtube连结:https://bit.ly/35dy19t 这次跟大家分享,AWS IAM的...

#08 实作篇 — 使用 Next.js 的各种 Data Fetching 方式实作小专案 ft. Github API

大家好!昨天实作了小小专案,也写了一篇短短的介绍文,那今天跟大家分享怎麽用 Next.js 的各种 ...