python成就框架
pychievements的Python项目详细描述
pychievements是在python应用程序中创建和跟踪成就的框架。 它包括专门用于创建命令行应用程序的功能,尽管它是灵活的。 足够用于任何应用程序,如web应用程序。
查看examples了解pychievements提供的功能。文件可在RTD中找到: http://pychievements.readthedocs.org/en/latest/
特点:
- Create Achievements with any number of “goals” (based on levels) that can be reached
- Flexible design makes it easy to customize the way levels are tracked
- Easy to add new achievements later
- Pluggable backend for storing tracked information in different formats to different locations
- Achievements can be filtered by category or keywords
- Easily specify “Icons” for individual goals within an achievement for dual states (achieved and unachieved)
示例
一个简单的成就。
class MyAchievement(Achievement): name = "My Achievement" category = "achievements" keywords = ("my", "achievement") goals = ( {"level": 10, "name": "Level 1", "icon": icons.star, "description": "Level One"}, {"level": 20, "name": "Level 2", "icon": icons.star, "description": "Level Two"}, {"level": 30, "name": "Level 3", "icon": icons.star, "description": "Level Three"}, )
为用户增加一个级别。
tracker.increment(user_id, MyAchievment)
基于参数重新计算用户的级别(需要定义evaluate函数 或者成就)。
tracker.evaluate(user_id, MyAchievement, some, extra, args)
检索成就。
tracker.achievements() # retrieves all registered achievements in the tracker tracker.achieved(uid, achievement) # all achieved goals by uid for achievement tracker.unachieved(uid, achievement) # all unachieved goals by uid for achievement tracker.current(uid, achievement) # goal currently being worked torwards by uid
安装
要安装pychievements,只需:
$ pip install pychievements
许可证
PyChievements是在麻省理工学院的许可下获得许可的,请参见LICENSE。
贡献
如果您想贡献,只需分叉the repository,提交您的更改 发送到master分支(或其分支),并发送一个拉取请求。制造 你一定要加入AUTHORS。
路线图
- 更多后端
- 更多图标
历史记录
0.1.0(2014-08-31)
- 初次发布!