首页 论坛 置顶 女巫的魔药:用Python面向对象编程构建的万圣节迷你游戏

正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 作者
    帖子
  • #27209

    大家好,亲爱的编码者和万圣节爱好者们!👻 随着夜晚变得更长,空气变得清新,我总是感到想要构建一些有趣、应季,并且略带神秘色彩的东西。昨晚,我一边品尝着南瓜香料咖啡,一边在YouTube上听着劈啪作响的火焰音效,坐下来编写了女巫的药水,这是一个小型文本猜测游戏,完美捕捉了万圣节的精髓,代码不超过100行,既简洁又富有教育意义的Python。

    这不仅仅是另一个“你好,世界”的项目。这是一个真正的迷你游戏,具有面向对象编程结构戏剧性的时机随机化的秘密玩家互动,所有这些都包裹在万圣节的氛围中。没错,我录制了一段完整的演示视频,这样你在运行代码之前就可以看到它的实际效果!


    游戏:作为学徒的任务

    你是 女巫的学徒。这位老妇人已经出门去恐吓村庄,留下了她的 冒泡的锅 和一条指令:

    “使用 恰好三种成分 酿造我的秘密药水。匹配我的组合……否则锅会 在你面前爆炸!

    你的成分(选择 3 种!):

    1. 蝾螈之眼 👁️
    2. 青蛙腿 🐸
    3. 南瓜种子 🎃
    4. 蝙蝠翅膀 🦇
    5. 鬼魂尘埃 👻

    你输入你的猜测,例如:1, 3, 5

    然后……魔法发生了。

    锅炉发出嘶嘶声。

    气泡上升。

    空气中弥漫着紧张的气氛……

    然后呢?

    • 成功

      你调制了完美的药水!女巫很满意!

      五彩纸屑(在你的想象中)爆炸。你被提升为首席学徒!

    • 失败

      药水爆炸了!混合错误!

      秘密配方是:蝙蝠翅膀、鬼魂尘埃、青蛙腿

      女巫回来了……并把你变成了一只青蛙! 🐸

    每局游戏都是不同的,女巫的组合是随机生成的。


    代码:深入魔法的世界(使用面向对象编程!)

    我使用三个干净的类设计了这个游戏,每个类都有单一的职责。这是真正的面向对象编程,而不仅仅是理论。

    1. Potion 类 – 锅炉背后的大脑

    class Potion:
        def __init__(self, ingredients):
            self.ingredients = ingredients
            self.secret_combo = random.sample(ingredients, 3)  # 纯随机!
    
    • 存储所有可能的成分
    • 使用 random.sample() 选择 3 个独特的项目 作为秘密组合
    • 没有重复,没有怜悯

    2. Apprentice 类 – 那就是

    class Apprentice:
        def choose_ingredients(self, ingredients):
            # 显示编号菜单
            for i, item in enumerate(ingredients, 1):
    
    print(f"  {i}. {item}")
    
    choice = input("n您的选择: ").split(",")
    
    try:
        return [ingredients[int(i.strip()) - 1] for i in choice]
    except:
    
    print("无效!灵魂为你选择...")
    return random.sample(ingredients, 3)
    • 处理 玩家输入
    • 验证 选择(使用 try/except
    • 如果你搞错了?游戏 不会崩溃,它会为你选择!(适合初学者的用户体验)

    3. Game 类 – 节目的导演

    def slow_print(self, text, delay=0.05):
        for char in text:
            print(char, end='', flush=True)
            time.sleep(delay)
        print()
    • 慢打印以制造悬念("B...u...b...b...l...i...n...g..."
    • ASCII 艺术横幅
    • 使用 time.sleep() 进行计时
    • 最终爆炸或胜利信息

    观看完整游戏演示! 🎥

    我录制了一段完整的游戏过程,让你可以实时看到戏剧的发展。观看紧张气氛如何逐渐升温,输入是如何工作的,以及当你猜错(或猜对!)时会发生什么。

    专业技巧:在观看后自己运行游戏,尝试第一次就通关!


    通过构建(或修改)这个你将学到的

    这不仅仅是一个游戏,它是一个迷你面向对象编程大师班

    概念 如何使用
    类与对象 PotionApprenticeGame — 每个都执行一个功能
    方法 choose_ingredients()slow_print()
    错误处理 try/except 防止崩溃
    随机性 random.sample() 提高重玩性
    用户体验 慢速文本、暂停、反馈
    代码结构 简洁、可读、可扩展

    最后的想法:迷你游戏的重要性

    女巫的药水不会赢得年度游戏奖……但它赢得了我的夜晚

    它让我想起了我为什么编程:

    • 为了创造
    • 为了欢笑
    • 为了公开学习

    最棒的部分是什么? 你也可以构建这个。事实上,我 你去分叉它,改变主题(圣诞精灵?太空酿造?),然后分享出来。


    构建于 Python 3、爱与一点午夜魔法。

    玩它破坏它重混它


    观看演示YouTube

    关注更多神秘代码@Shahrouzlogs 在 Twitter

    GitHub 仓库Witch Potion

正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 哎呀,回复话题必需登录。