emacs-china / el-virtual-pet

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

README

我们的程序要具备以下特性。

  • 对这个宠物可以有 4 种活动:给它喂食、带它散步、和它玩或者带它看病。
  • 可以监测这个宠物的 3 种统计信息:饥饿感、快乐度和健康度。
  • 宠物可以醒着或者睡觉。
  • 饥饿感会随时间增加。可以通过喂食减少饥饿感。
  • 宠物睡觉时饥饿感的增加会减慢。
  • 如果宠物在睡觉,你做任何活动都会让它醒过来,快乐度会大幅减少。
  • 如果宠物太饿了,它的快乐度会减少。
  • 如果宠物实在太饿了,它的健康度会减少。
  • 带宠物散步会同时增加它的快乐度和健康度。
  • 与宠物玩会让它的快乐度增加。
  • 带宠物看病会让它的健康度增加。
  • 宠物的健康度降为0时,宠物死亡,游戏结束.
  • 宠物有 6 个不同的图片:
    • 一个睡觉的图片
    • 一个醒着但什么也不做的图片
    • 一个散步的图片
    • 一个玩耍的图片
    • 一个进食的图片
    • 一个看病的图片
    • 一个死亡的图片

算法

要为电子宠物程序写代码,需要更明确地了解宠物的行为。以下是我们要使用的算法。

  • 我们把宠物的一“天”分为 60 个部分,每一部分称为一个“滴答”。每个滴答的实际时间是 5 秒钟,所以宠物的“一天”就是我们实际时间的 5 分钟。
  • 宠物在 48 个滴答中都醒着,然后它想睡 12 个滴答。你可以把它叫醒,不过这样会让它很不高兴!
  • 饥饿感、快乐度和健康度的范围都是 0 到 20。
  • 醒着时,饥饿感每个滴答会增加 1 个单位,快乐度每 2 个滴答减少 1 个单位(除非在散步或者玩)。
  • 睡觉时,饥饿感每 3 个滴答增加 1 个单位。
  • 进食时,饥饿感每个滴答减少 1 个单位。
  • 玩时,快乐度每个滴答增加 1 个单位。
  • 散步时,快乐度和健康度每 2 个滴答增加 1 个单位。
  • 看病时,健康度每个滴答增加 1 个单位。
  • 如果饥饿感达到 16,健康度每 2 个滴答减少 1 个单位。
  • 如果饥饿感达到 20,健康度每个滴答减少 1 个单位。
  • 如果睡觉时被叫醒,快乐度减少 4 个单位。
  • 如果程序不在运行,宠物可能醒着(什么也不做),也可能在睡觉。

相关链接

和孩子一起做一只电子宠物吧!

About


Languages

Language:Emacs Lisp 100.0%