Compare commits

...

745 Commits

Author SHA1 Message Date
wszqkzqk
c88a018209
升级CI到python 3.12 (#21)
Signed-off-by: Zhou Qiankang <wszqkzqk@qq.com>
2025-06-23 10:40:10 +08:00
sanshi
11c3129ea0
格式化代码以及添加依赖文件配置 (#19)
* refactor: 格式化代码

* 添加依赖文件
2025-06-23 10:21:58 +08:00
wszqkzqk
72915de297
更新CI配置:升级Python版本并添加发布条件 (#20)
* 将CI工作流的Python版本从3.11升级到3.12
* 为所有发布步骤添加仓库条件检测,避免在fork仓库的PR中触发发布

Signed-off-by: Zhou Qiankang <wszqkzqk@qq.com>
2025-06-21 22:06:19 +08:00
wszqkzqk
268b32bba5
启用pygame缩放 (#18)
* Closes #17

Signed-off-by: Zhou Qiankang <wszqkzqk@qq.com>
2025-06-12 23:34:52 +08:00
星外之神
47b4ba1783
在夜晚关卡不推荐选择咖啡豆 (#16) 2023-11-24 10:32:11 +08:00
星外之神
9e63c5bf57
Update audio files & CI scripts
* 手动指定依赖文件

* ci

* 包括所有dll

* 手动修复dll包含

* update audio files

* 更改潜水僵尸设定
2023-10-14 13:45:49 +08:00
星外之神
78ba0efbcd
Update audio files & CI scripts
* 手动指定依赖文件

* ci

* 包括所有dll

* 手动修复dll包含

* update audio files
2023-10-11 21:59:47 +08:00
星外之神
70ffd9489d
Dev (#12)
* 手动指定依赖文件

* ci

* 手动修复dll包含
2023-06-01 09:59:48 +08:00
星外之神
daee48eb6e
Merge pull request #11 from wszqkzqk/dev
尝试修复CI
2023-06-01 01:04:54 +08:00
wszqkzqk
5267003c6f
尝试修复CI 2023-06-01 01:04:21 +08:00
星外之神
431d4ae662
Merge pull request #9 from wszqkzqk/dev
小修改: 类型注释 & CI
2023-06-01 00:46:03 +08:00
wszqkzqk
7efd1fcadf
重命名截屏 2023-06-01 00:42:16 +08:00
wszqkzqk
1bcef4d141
移除python 3.10 CI 2023-06-01 00:42:16 +08:00
wszqkzqk
2d368f8bf5
添加类型注解 2023-06-01 00:42:16 +08:00
wszqkzqk
388b3175e0
避免重复构建 2023-06-01 00:42:16 +08:00
星外之神
ffb48381a5
Merge pull request #8 from wszqkzqk/dev
小:统一括号缩进
2022-12-25 16:00:31 +08:00
wszqkzqk
6ac010321a 小:统一括号缩进 2022-12-25 16:00:01 +08:00
星外之神
d07983dbbd
Merge pull request #7 from wszqkzqk/dev
在README中更新数据和日志存储路径
2022-12-25 15:52:24 +08:00
wszqkzqk
fc5029fad3 在README中更新数据和日志存储路径 2022-12-25 15:51:55 +08:00
wszqkzqk
b18e442f66 Linux可执行文件说明 2022-12-13 18:37:19 +08:00
wszqkzqk
fd9253d410 恢复Linux单文件版构建 2022-12-13 18:06:58 +08:00
wszqkzqk
17de44a773 切换到Python 3.10 2022-12-11 14:29:09 +08:00
wszqkzqk
ac392595b0 运行时不禁用x11合成器(Linux) 2022-12-11 11:07:38 +08:00
wszqkzqk
926f40caf9 迁移存档位置 2022-12-10 19:46:14 +08:00
wszqkzqk
63e36df930 面向对象化 2022-11-04 11:16:35 +08:00
wszqkzqk
8ae6b88d8a 使用dev进行开发,master进行发布 2022-11-04 10:52:05 +08:00
星外之神
3ef4570334 恢复python3.10的使用 2022-10-30 17:23:59 +08:00
wszqkzqk
1ec9c19f41 升级Python版本 2022-10-30 11:16:14 +08:00
wszqkzqk
65b7c38078 增加权限设置的可读性 2022-10-30 11:14:42 +08:00
星外之神
05770cf502 统一变量命名风格 2022-10-05 21:28:14 +08:00
星外之神
6c2595d35c 进度推进说明 2022-10-05 18:37:33 +08:00
星外之神
3f22446a85 列入重新面向对象实现的计划 2022-09-14 07:56:51 +08:00
wszqkzqk
5baf11a3f1 优化标志使用 2022-09-14 07:49:05 +08:00
wszqkzqk
f496e576fd 更改不推荐的逻辑顺序,防止海蘑菇错误归类 2022-09-14 07:41:05 +08:00
星外之神
60911bebdd 删除部分冗余结构 2022-09-13 21:21:20 +08:00
星外之神
37d8b29f60 显示当前关卡不推荐选择的卡片提示 2022-09-13 17:22:46 +08:00
星外之神
2235f687dc 更改选中卡片显示 2022-09-13 16:02:12 +08:00
wszqkzqk
533820deda Merge branch 'master' of github.com:wszqkzqk/pypvz 2022-08-30 18:57:43 +08:00
星外之神
8ce2ccf734 统一变量命名风格 2022-08-30 15:06:03 +08:00
星外之神
57501a8f22 统一越界判断函数 2022-08-14 11:03:55 +08:00
星外之神
cf20f9733f 修复更多的地图越界bug 2022-08-14 10:58:12 +08:00
星外之神
f46585264d 修复铲子位置导致的列表越界bug 2022-08-14 10:53:40 +08:00
星外之神
f38e415add 将screen设置为抽象基类;重构 2022-08-11 16:11:11 +08:00
wszqkzqk
a0c8201d26 重构 2022-08-11 10:42:30 +08:00
wszqkzqk
ebf68c0393 Merge branch 'master' of github.com:wszqkzqk/pypvz 2022-08-10 20:26:38 +08:00
wszqkzqk
23824233df 重构 2022-08-10 20:26:30 +08:00
星外之神
5f83d8c805 关卡说明 2022-08-10 10:47:54 +08:00
星外之神
da1eb13946 增加可读性 2022-08-10 10:30:08 +08:00
wszqkzqk
777e937d98 重构 2022-08-09 20:23:47 +08:00
wszqkzqk
08ec7e2d00 平衡难度 2022-08-09 11:01:57 +08:00
wszqkzqk
b7b69cec61 更改卡片显示 2022-08-09 05:46:06 +08:00
wszqkzqk
9e01c018e4 更改缠绕海草攻击范围 2022-08-08 23:59:17 +08:00
wszqkzqk
544560c49e 重构表达式 2022-08-08 23:08:03 +08:00
星外之神
baeb003f5f 修改卡片显示 2022-08-08 18:26:46 +08:00
星外之神
2376922a77 指定编码 2022-08-08 17:34:15 +08:00
星外之神
f37f05b726 改用推导式以便pylance明确数据类型 2022-08-08 16:27:48 +08:00
wszqkzqk
10711a5509 减少try包括的语段 2022-08-08 12:29:14 +08:00
wszqkzqk
1c52ea88f4 更改权限处理方式 2022-08-08 12:21:13 +08:00
wszqkzqk
44ccabd74d 捕捉保存时权限问题 2022-08-08 12:12:36 +08:00
wszqkzqk
f3b602a30e 避免提示的歧义 2022-08-08 10:55:13 +08:00
wszqkzqk
7e93949f91 完善日志 2022-08-08 10:49:18 +08:00
wszqkzqk
6edaf34d11 完善日志机制 2022-08-08 10:38:45 +08:00
wszqkzqk
1c96110e28 整理 2022-08-08 09:05:41 +08:00
wszqkzqk
98463e524b 修复墓碑吞噬者可以种植在墓碑吞噬者上的bug 2022-08-06 15:39:39 +08:00
wszqkzqk
e010251b00 平衡难度 2022-08-06 15:36:47 +08:00
wszqkzqk
506900d21c 减少音乐前间隔 2022-08-06 13:50:30 +08:00
wszqkzqk
d07810afce 点击冒险模式后暂停普通音乐播放 2022-08-06 13:45:48 +08:00
wszqkzqk
139b5d3ef8 删除音频播放前的延迟 2022-08-06 13:44:28 +08:00
星外之神
8067508eb3 修复显示问题 2022-08-05 16:42:58 +08:00
星外之神
d93acfe9e3 修复4-1关的bug 2022-08-05 14:49:21 +08:00
星外之神
0493ec70d5 简化测试关卡 2022-08-05 14:23:36 +08:00
星外之神
95b4d789e5 压缩 2022-08-03 09:15:36 +08:00
wszqkzqk
6ae7007bb9 增加帮助菜单打开音效 2022-08-02 22:29:23 +08:00
星外之神
bf3fdc08b9 优化警告排版 2022-08-02 20:17:12 +08:00
星外之神
9801133724 修复小推车触发bug 2022-08-02 19:41:14 +08:00
星外之神
fde1661ec5 更改标题显示 2022-08-02 19:06:01 +08:00
星外之神
7240c61765 修复坚果保龄球闪退bug 2022-08-02 18:19:35 +08:00
星外之神
8cd22a1140 修复南瓜头bug“安倍晋三的保镖” 2022-08-02 14:49:27 +08:00
星外之神
ce62e9b35c 完善小推车设置 2022-08-02 13:35:25 +08:00
星外之神
9fa8fbb847 加入坚果保龄球2 2022-08-02 12:52:46 +08:00
星外之神
72cad4a3fd 暂时设定为大嘴花没有成功攻击时不发出声音 2022-08-01 23:19:21 +08:00
星外之神
80021191ff 更改大嘴花音效体验 2022-08-01 23:14:01 +08:00
星外之神
205ec949e1 更改小推车机制 2022-08-01 22:54:21 +08:00
星外之神
0f59007e82 修改小推车机制 2022-08-01 22:53:12 +08:00
星外之神
99deb7bbe8 植物卡片在冷却时间不足且阳光也不足时,叠加两者效果显示,即同时改变透明度与图像覆盖 2022-08-01 22:34:58 +08:00
星外之神
2862aa28b5 修复用str作key导致keyerror的问题 2022-08-01 22:30:25 +08:00
星外之神
ac3f7f56d7 统一变量命名规则 2022-08-01 14:44:29 +08:00
星外之神
172b736e2f 统一变量命名规则 2022-08-01 14:39:25 +08:00
星外之神
7c2b72152d 统一命名规则:function、method用驼峰命名法变量用下划线命名法 2022-08-01 14:37:39 +08:00
星外之神
93259a2380 修改成就显示位置 2022-08-01 11:38:51 +08:00
星外之神
177e426ed5 Merge branch 'master' of github.com:wszqkzqk/pypvz 2022-08-01 11:35:15 +08:00
星外之神
a1b7c389a0 平衡难度 2022-08-01 11:34:56 +08:00
wszqkzqk
cb94f49cf9 补全后缀名 2022-07-31 21:33:58 +08:00
星外之神
afda2a02c8 更改子弹生存时间 2022-07-31 10:46:02 +08:00
星外之神
76533796a3 更改毁灭菇阳光 2022-07-31 08:12:44 +08:00
wszqkzqk
6c65b27df6 显示标题 2022-07-30 20:04:30 +08:00
wszqkzqk
428b4df8e7 修复阳光错误 2022-07-30 19:52:45 +08:00
星外之神
a87233c920 忽略更多文件 2022-07-30 13:51:12 +08:00
星外之神
3117a85c88 设置帮助界面标题 2022-07-30 10:39:59 +08:00
星外之神
e00a640d76 添加截图 2022-07-30 10:34:51 +08:00
星外之神
8aea3e7c36 平衡难度 2022-07-30 10:28:53 +08:00
星外之神
02e77c081f 更改colorkey 2022-07-30 10:21:53 +08:00
星外之神
f939e10215 跟进自述文件 2022-07-30 10:12:51 +08:00
星外之神
05144d9a1b 加入帮助界面 2022-07-30 10:11:55 +08:00
星外之神
ad5bd75478 明确变量名含义 2022-07-29 23:23:28 +08:00
星外之神
b9a08ba9aa 完善说明 2022-07-29 22:39:46 +08:00
星外之神
68bfc3269e 要认真写commit的项目还是不要加这两个脚本了 2022-07-29 22:32:21 +08:00
wszqkzqk
286fd32444 整理函数调用 2022-07-29 22:19:11 +08:00
wszqkzqk
ae8492ded7 更改失败界面 2022-07-29 20:15:58 +08:00
wszqkzqk
428f57fac1 胜利界面音乐设定 2022-07-29 20:08:06 +08:00
wszqkzqk
b7452a0635 更改文字显示 2022-07-29 20:06:39 +08:00
wszqkzqk
7263521ef7 更改胜利、失败界面 2022-07-29 19:51:53 +08:00
wszqkzqk
20f6400e9a 修复漏参 2022-07-29 17:08:48 +08:00
wszqkzqk
5f4c571ff6 使用统一双引号 2022-07-29 17:06:17 +08:00
wszqkzqk
4e055429b0 规范常数表达 2022-07-29 17:02:45 +08:00
星外之神
2bca7f1d65 放宽Ag向日葵条件;加入新BGM 2022-07-29 16:21:45 +08:00
星外之神
dd090b022d 修复小游戏通关结果不正常的bug 2022-07-29 15:52:25 +08:00
星外之神
837e225335 微调 2022-07-29 15:16:36 +08:00
星外之神
51f80eb081 完善获得金向日葵的界面 2022-07-29 15:11:20 +08:00
星外之神
14f485e8f5 增加向日葵奖杯获得界面 2022-07-29 14:54:53 +08:00
星外之神
c80df793c4 改进日志;初步引入新界面 2022-07-29 14:01:32 +08:00
星外之神
698f2cbae9 说明最新状态 2022-07-29 12:05:58 +08:00
星外之神
8acb592508 将常数性质的json统一合并到python 2022-07-29 11:59:39 +08:00
星外之神
7c50a29f9e 将地图统一为python内容 2022-07-29 11:17:52 +08:00
星外之神
280d8c2a57 使用字体渲染实现返回按钮 2022-07-29 07:42:23 +08:00
星外之神
c2d1483fb6 更新截图 2022-07-28 23:52:27 +08:00
星外之神
dc87bcadb1 增加成就提示 2022-07-28 23:44:53 +08:00
星外之神
29f47bf789 平衡难度 2022-07-28 22:33:21 +08:00
星外之神
e8380e25ff 统一colorkey 2022-07-28 20:51:40 +08:00
星外之神
7164dd3beb 修复选卡模式下点击菜单会闪退的bug;更改封装 2022-07-28 20:00:40 +08:00
星外之神
be5309f328 修复初始时未应用存档内的音效音量设定的bug 2022-07-28 18:58:52 +08:00
星外之神
04b4bd140a 修复地图路径错误 2022-07-28 18:42:44 +08:00
星外之神
3dc97a4ed4 修正语病 2022-07-28 18:36:52 +08:00
星外之神
ca13fdf085 删除多余的调用 2022-07-28 18:36:03 +08:00
星外之神
290e5d60ff 修复寒冰射手子弹音效播放时闪退的bug 2022-07-28 18:33:36 +08:00
星外之神
59deb4afe4 整理path缩减代码 2022-07-28 18:22:51 +08:00
星外之神
3898dd920d 汇总路径 2022-07-28 17:35:24 +08:00
星外之神
b639e5f5be 增加截图 2022-07-28 16:57:51 +08:00
星外之神
b2a7c22be6 修复没有铲子关卡自动检测铲子点击导致闪退的bug 2022-07-28 16:42:48 +08:00
星外之神
8b74d2cc38 删除冗余信息 2022-07-28 16:27:21 +08:00
星外之神
0b6c545de5 采用海象算子(>=python3.8)减少维护工作量 2022-07-28 16:26:49 +08:00
星外之神
2b85451404 支持自动保存音量设置到文件,以便下次直接应用 2022-07-28 15:48:59 +08:00
星外之神
ffc57d12ff 关卡内也实现了音量调节 2022-07-28 15:38:56 +08:00
星外之神
6508bdcdb7 全面更改音乐机制,支持调节音量 2022-07-28 15:16:00 +08:00
星外之神
3a67b414ee 初步加入音量调节按钮(仅按钮) 2022-07-28 13:02:23 +08:00
星外之神
e1d464039a 修改进度条颜色 2022-07-28 12:02:33 +08:00
wszqkzqk
26cc7a083c 更改关卡进程进度条位置 2022-07-28 07:14:23 +08:00
wszqkzqk
283cf636c4 跟进注释 2022-07-28 05:53:32 +08:00
wszqkzqk
f2d1f22e7c 修复海蘑菇阳光错误 2022-07-28 05:50:18 +08:00
wszqkzqk
f447111406 修改字体样式移除大蒜卡片原图中的阳光 2022-07-28 05:48:23 +08:00
wszqkzqk
14d4775360 将卡片阳光显示改为自动 2022-07-28 05:40:56 +08:00
wszqkzqk
96c8069001 更改首关初始阳光值 2022-07-28 00:01:15 +08:00
wszqkzqk
111065c4a7 增加开发计划 2022-07-27 23:34:15 +08:00
wszqkzqk
f49cc4e12d 修复权限问题 2022-07-27 23:22:42 +08:00
wszqkzqk
14326d8194 预加入中文显示支持 2022-07-27 23:17:19 +08:00
wszqkzqk
d227a28452 修复从游戏中返回主菜单时闪退的bug 2022-07-27 19:50:04 +08:00
wszqkzqk
17b91b2ae2 微调金银向日葵位置 2022-07-27 19:42:53 +08:00
wszqkzqk
fbe05066f3 补充 2022-07-27 19:24:40 +08:00
wszqkzqk
be1ebbc661 添加截屏 2022-07-27 19:22:20 +08:00
wszqkzqk
e839af9df4 成就加入说明跟进 2022-07-27 19:19:25 +08:00
wszqkzqk
94701fe413 加入金银向日葵 2022-07-27 19:13:54 +08:00
wszqkzqk
ead7826d80 完善存档容错机制 2022-07-27 17:11:27 +08:00
wszqkzqk
5df1997efe 对存档说明 2022-07-27 17:05:57 +08:00
wszqkzqk
9ed30689c4 更新关于游戏速度倍率调节的说明 2022-07-27 17:00:16 +08:00
wszqkzqk
64f2fa52c0 支持Windows下单文件封装模式调节游戏速度倍率 2022-07-27 16:50:20 +08:00
星外之神
95d72c55cd 移除过时说明 2022-07-27 11:17:29 +08:00
星外之神
64ae521cd6 减少波数 2022-07-27 11:03:39 +08:00
星外之神
bf2e74d808 更改生成僵尸类型 2022-07-27 11:03:22 +08:00
星外之神
a37cd228bd 重命名可执行文件 2022-07-27 10:53:28 +08:00
星外之神
4dc62269dd 删除调试模式不需要的功能 2022-07-27 10:47:32 +08:00
星外之神
a0a5677f6c 恢复关卡导入容错设计 2022-07-27 10:37:06 +08:00
星外之神
7c706ea3a3 修复关卡胜利界面异常的bug 2022-07-27 10:10:23 +08:00
星外之神
327c9c3a20 增加pyinstaller构建参考 2022-07-27 09:50:08 +08:00
星外之神
88d2e734a4 增大睡莲权重 2022-07-27 09:37:22 +08:00
星外之神
793cbea586 修复有存档时导入字典未创建的bug 2022-07-27 09:21:29 +08:00
星外之神
04f4b65d42 修复无存档时没有初始化game_info的bug 2022-07-27 09:18:13 +08:00
星外之神
b4a3fa993d 将初始存档直接保存到常数文件 2022-07-27 09:09:33 +08:00
星外之神
edf1898b8c 更改通关提示 2022-07-27 09:00:50 +08:00
wszqkzqk
7568c91744 移除不再使用的常数 2022-07-26 23:35:24 +08:00
wszqkzqk
410cf2cca1 科学放置音乐播放代码位置 2022-07-26 23:28:48 +08:00
wszqkzqk
82cebe8288 整理注释 2022-07-26 23:20:16 +08:00
wszqkzqk
f3d664b263 加入选项菜单 2022-07-26 23:10:46 +08:00
wszqkzqk
ee8de23bd5 优化音乐播放代码位置 2022-07-26 22:45:52 +08:00
wszqkzqk
7aee0662a5 显示选项按钮 2022-07-26 22:40:41 +08:00
wszqkzqk
d7c9fb07a5 加入部分按钮 2022-07-25 07:21:44 +08:00
wszqkzqk
c16d6dc70f Merge branch 'master' of github.com:wszqkzqk/pypvz 2022-07-24 22:00:15 +08:00
wszqkzqk
a0edb3caef 取消Linux构建 2022-07-24 21:57:51 +08:00
星外之神
cfbd4951d2 阻止pr发布release 2022-07-24 17:55:28 +08:00
wszqkzqk
4671f2ffa0 日志文件说明 2022-07-24 17:32:53 +08:00
wszqkzqk
98fe2325d9 更改命令 2022-07-24 16:52:36 +08:00
wszqkzqk
11f6be9a99 更改命令 2022-07-24 16:48:53 +08:00
wszqkzqk
96faf23a12 更改命令 2022-07-24 16:40:41 +08:00
wszqkzqk
3b8a0fb309 更改构建方式 2022-07-24 16:32:10 +08:00
wszqkzqk
9b79db8de4 移除不需要的文件 2022-07-24 16:17:10 +08:00
wszqkzqk
87da04c9a1 取消appimage,改用tar打包 2022-07-24 16:11:41 +08:00
wszqkzqk
c0963931b8 适配appimage 2022-07-24 15:57:45 +08:00
wszqkzqk
a6ced8d6f3 更改工作流系统版本 2022-07-24 15:50:29 +08:00
wszqkzqk
10de70d0b9 重写连接符号 2022-07-24 15:46:59 +08:00
wszqkzqk
0a609f7c42 更改工作流配置 2022-07-24 15:40:02 +08:00
wszqkzqk
169e7d8419 增加Linux云编译 2022-07-24 15:36:31 +08:00
wszqkzqk
e985c8660b 优化关卡进度显示 2022-07-24 15:17:55 +08:00
星外之神
f5daeae93a 调整readme 2022-07-24 13:45:33 +08:00
星外之神
38c7713c85 调整readme 2022-07-24 13:45:08 +08:00
星外之神
ca0280db28 调整readme 2022-07-24 13:44:13 +08:00
星外之神
b47ffc705e 删除冗余引用 2022-07-24 13:36:50 +08:00
星外之神
4f2c8cf4da 删除部分无效外部引用 2022-07-24 13:30:25 +08:00
星外之神
d696cc3c54 关于添加日志的说明 2022-07-24 12:59:02 +08:00
星外之神
2e5651a9db 优化控制台日志显示 2022-07-24 12:49:02 +08:00
星外之神
efb5db0c69 启用高级日志功能 2022-07-24 12:46:59 +08:00
星外之神
8d6526bd66 加入日志功能 2022-07-24 11:40:57 +08:00
星外之神
b574c82ebb 修复受损坚果图片显示bug 2022-07-24 10:39:50 +08:00
星外之神
2b9d5d21ae 增加关卡数显示;修复通关后无法进入的bug 2022-07-24 10:13:36 +08:00
星外之神
e7caf339c5 增加毁灭菇传送带卡片 2022-07-24 10:08:33 +08:00
星外之神
798a9698ef 修正胆小菇卡片名称 2022-07-24 10:08:13 +08:00
星外之神
5dfab2cada 修复睡莲卡片命名错误 2022-07-24 10:07:40 +08:00
星外之神
1c982c723c 平衡夜晚关卡难度 2022-07-24 10:07:14 +08:00
wszqkzqk
1fb0df6369 更新列表 2022-07-24 08:16:38 +08:00
wszqkzqk
6512853932 更改南瓜头动作间隔 2022-07-24 00:36:59 +08:00
wszqkzqk
ef7ab50fb2 更改南瓜头是否能种植的判断机制 2022-07-24 00:31:20 +08:00
wszqkzqk
d3f569cee7 实现了一个较为劣质的南瓜头 2022-07-24 00:07:42 +08:00
星外之神
ddabaf4c64 编译命令说明 2022-07-23 22:36:48 +08:00
星外之神
a0e70ce8a7 标点 2022-07-23 22:27:23 +08:00
星外之神
ac9d566b62 更改表述 2022-07-23 20:05:22 +08:00
wszqkzqk
f25dde09ad 关卡重设 2022-07-23 16:26:54 +08:00
wszqkzqk
48a21ace11 关卡说明 2022-07-23 16:18:19 +08:00
星外之神
4dc5024ed4 存档说明 2022-07-23 15:59:40 +08:00
星外之神
8740048e6b 自定义说明 2022-07-23 15:56:46 +08:00
星外之神
97e2ac7edf 加入引导模式 2022-07-23 15:38:00 +08:00
星外之神
a64d95f988 更新依赖表述 2022-07-23 15:31:01 +08:00
星外之神
434635dbe3 路径说明 2022-07-23 15:28:27 +08:00
星外之神
60221c6226 暂时恢复if实现以便编译;更改坚果保龄球旗帜数 2022-07-23 15:18:26 +08:00
星外之神
19a8ea59f0
Merge pull request #5 from wszqkzqk/filesave
增加进度保存功能
2022-07-23 14:55:49 +08:00
wszqkzqk
52c2266b9b 添加说明 2022-07-23 14:53:51 +08:00
wszqkzqk
a323c38ba0 适配Windows路径 2022-07-23 14:49:54 +08:00
wszqkzqk
bcb015660a 添加数据存储支持 2022-07-23 14:27:43 +08:00
wszqkzqk
29c8824d1f 增加传送带关卡卡片生成权重机制 2022-07-23 09:38:59 +08:00
星外之神
f5b19894e6 恢复match-case实现 2022-07-20 22:27:56 +08:00
星外之神
9fa2521396 To compile with Nuitka bug of match-case 2022-07-20 14:12:30 +08:00
星外之神
42e67c0d26 删除透明部分颜色残余 2022-07-20 14:04:03 +08:00
星外之神
008626de17 修复大蒜显示 2022-07-20 13:52:57 +08:00
星外之神
f70c4e5598 补充 2022-06-18 12:38:56 +08:00
星外之神
9e82f15981 增加测试构建命令 2022-06-18 12:30:54 +08:00
星外之神
aa5caa2549 更新构建说明及临时文件名称 2022-06-18 12:19:05 +08:00
星外之神
7527fca972 安全打开文件 2022-06-17 11:45:00 +08:00
wszqkzqk
c041894f97 修复bgm导入失败 2022-06-14 01:00:39 +08:00
wszqkzqk
5422c371ff 修复未导入地图的bug 2022-06-14 00:58:45 +08:00
星外之神
6a22c51231 设计说明 2022-06-12 17:36:04 +08:00
星外之神
82b24951b1 更改任务名称 2022-06-12 16:33:18 +08:00
星外之神
ff5387c3f5 将pr构建与commit构建分开 2022-06-12 16:32:21 +08:00
星外之神
2af6371a10 修复僵尸啃食的bug 2022-06-12 16:11:16 +08:00
星外之神
c3dc470dae 升级到python 3.10 2022-06-12 15:57:04 +08:00
星外之神
54e40df6c4 修复变量名错误 2022-06-12 13:47:13 +08:00
星外之神
8d06608e14 优化点击位置输出显示 2022-06-11 19:12:32 +08:00
星外之神
cbc1cbd97f 优化输出显示 2022-06-11 19:09:52 +08:00
星外之神
ecd511495d 整理 2022-06-09 11:06:39 +08:00
星外之神
c967c56c54 恢复inf原设定 2022-06-08 11:04:25 +08:00
星外之神
da7c3ce908 更改infbi 2022-06-08 10:55:22 +08:00
星外之神
5bc2a15db8 更改地图初始化函数 2022-06-08 10:22:12 +08:00
星外之神
dd623e1c71 编译开启LTO 2022-06-07 21:53:00 +08:00
星外之神
d9a49ff1a1 修复坚果保龄球闪退bug 2022-06-07 14:59:49 +08:00
星外之神
87d5d4a890 完善补充 2022-06-07 14:47:52 +08:00
星外之神
4b19f7f851 优化地图生成性能 2022-06-07 14:38:57 +08:00
星外之神
1a54844ffe 优化 2022-06-07 14:06:01 +08:00
星外之神
80fdac7220 优化毁灭菇种植判断 2022-06-07 13:26:16 +08:00
星外之神
ae58d15e18 重构 2022-06-05 15:53:44 +08:00
星外之神
0345119d34 重构 2022-06-04 21:59:51 +08:00
星外之神
0db90ba8c8 更改飞出屏幕对象的杀死条件 2022-06-04 21:31:09 +08:00
星外之神
1ff2d1a6f6 修复大蒜的大量bug 2022-06-04 19:26:04 +08:00
星外之神
1e86ad16ea 使杨桃向后发射的子弹可以忽略二类防具 2022-06-04 16:27:48 +08:00
星外之神
e2d211036d 减慢换行动画 2022-06-04 15:48:02 +08:00
星外之神
dd7c81f45f 统一形式 2022-06-04 14:07:33 +08:00
星外之神
1df7d937f4 更新备注 2022-06-04 13:51:58 +08:00
星外之神
1d1f6558ce readme中加入大蒜 2022-06-03 23:37:02 +08:00
星外之神
5e44207c51 删除现在没什么用的内容 2022-06-03 23:19:02 +08:00
星外之神
4fb64964da 修复初始关卡问题 2022-06-03 22:58:10 +08:00
星外之神
0eba0a9210 分行呈现编译命令 2022-06-03 22:54:54 +08:00
星外之神
9f1ffd532f 修复卡片信息被重新定义的bug‘ 2022-06-03 22:40:46 +08:00
星外之神
f1117a862f Merge branch 'garlic' 2022-06-03 22:36:13 +08:00
星外之神
954210264f 大蒜基本可用 2022-06-03 22:31:57 +08:00
星外之神
06ce13b0ac 正常化游戏 2022-06-03 21:32:04 +08:00
星外之神
783e0743ba Squashed commit of the following:
commit b6799a240bb2674f6b835b8402da609e22059030
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 20:03:55 2022 +0800

    修改异常处理方式

commit dcf925ca526e66166c5b19b0b8442a32120a332d
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 19:51:06 2022 +0800

    暂时放弃OpenGL

commit 2c0dc94c75d902aa356ee0b8350ea0aa02c84fdb
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 19:41:50 2022 +0800

    更改非Nuitka程序图标设定

commit 1dd0894adffdafd61bd696807a6eb9d2735d4d25
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 19:16:21 2022 +0800

    维护清理

commit b8a7fc0a66a22fae0ead9a9e4f88aa024276f078
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 14:43:51 2022 +0800

    修复传送带模式中点击到达传送带底部的卡片没有透明度变化的bug

commit 9303304e94aabd4f955c3c186ff73525057bb133
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 14:21:47 2022 +0800

    优化报纸僵尸设定

commit 0b9dbdc14513916dcb15dc717060faf380c1b681
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 14:17:26 2022 +0800

    微调报纸僵尸速度

commit 44e6ce77e77fba19ebec22d08cdccf6d07246905
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 13:58:31 2022 +0800

    清理

commit e00ed2f061ff148cbe0b38991a6ab585963ec9b3
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 13:58:05 2022 +0800

    修复潜水僵尸只能攻击一次的bug

commit 790bc0bc5eeb206ebe769d91a4f339d050e86100
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri Jun 3 10:15:33 2022 +0800

    更改构建命令

commit db86b3144ced0603c4db1e7220dbc47559b9dd87
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Thu Jun 2 19:03:13 2022 +0800

    更改模块调用方式

commit 885f9902af79b2e23590956626e6eabe17e71931
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Wed Jun 1 14:15:50 2022 +0800

    更新null值引用方式

commit d054ff498ba58356e9886064ae9c1a62fb0585a5
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Wed Jun 1 13:39:56 2022 +0800

    进一步将常数性内容汇总到constants.py中

commit c4a756756b922cba8f8224b247bce7e7e7838808
Author: 星外之神 <wszqkzqk@qq.com>
Date:   Fri May 27 15:23:52 2022 +0800

    说明
2022-06-03 21:29:45 +08:00
星外之神
b6799a240b 修改异常处理方式 2022-06-03 20:03:55 +08:00
星外之神
dcf925ca52 暂时放弃OpenGL 2022-06-03 19:51:06 +08:00
星外之神
2c0dc94c75 更改非Nuitka程序图标设定 2022-06-03 19:41:50 +08:00
星外之神
1dd0894adf 维护清理 2022-06-03 19:16:21 +08:00
星外之神
b8a7fc0a66 修复传送带模式中点击到达传送带底部的卡片没有透明度变化的bug 2022-06-03 14:43:51 +08:00
星外之神
9303304e94 优化报纸僵尸设定 2022-06-03 14:21:47 +08:00
星外之神
0b9dbdc145 微调报纸僵尸速度 2022-06-03 14:17:26 +08:00
星外之神
44e6ce77e7 清理 2022-06-03 13:58:31 +08:00
星外之神
e00ed2f061 修复潜水僵尸只能攻击一次的bug 2022-06-03 13:58:05 +08:00
星外之神
790bc0bc5e 更改构建命令 2022-06-03 10:15:33 +08:00
星外之神
db86b3144c 更改模块调用方式 2022-06-02 19:03:13 +08:00
星外之神
885f9902af 更新null值引用方式 2022-06-01 14:15:50 +08:00
星外之神
d054ff498b 进一步将常数性内容汇总到constants.py中 2022-06-01 13:39:56 +08:00
星外之神
c4a756756b 说明 2022-05-27 15:23:52 +08:00
星外之神
cdf992095e 大蒜测试 2022-05-27 15:09:53 +08:00
星外之神
08b1c19fa2 初步加入没有功能的大蒜 2022-05-27 13:41:04 +08:00
星外之神
762741d20d 删除冗余设计 2022-05-27 11:26:28 +08:00
星外之神
2e4b4bdacc 新增关卡设定说明 2022-05-27 01:31:34 +08:00
星外之神
7208c2eb5f 恢复起始关卡,设置卡片权重 2022-05-27 01:28:08 +08:00
星外之神
0c9d562cba 增加部分关卡素材 2022-05-27 00:53:50 +08:00
星外之神
b281094b44 实现潜水僵尸 2022-05-26 23:51:44 +08:00
星外之神
c1d0505fd9 补全潜水僵尸图片索引 2022-05-26 20:42:45 +08:00
星外之神
4bf7b16273 增加部分素材 2022-05-25 23:00:26 +08:00
星外之神
a8e93e75e0 增加部分素材 2022-05-25 23:00:13 +08:00
星外之神
d3e85340b7 将换行输入符号替换为Windows样式 2022-05-22 19:38:20 +08:00
星外之神
29d8584548 整理构建代码 2022-05-22 19:28:37 +08:00
wszqkzqk
452cc6531f 更改下载地址指向 2022-05-22 10:38:56 +08:00
星外之神
e1a56c5db0 更改下载地址 2022-05-21 21:53:40 +08:00
星外之神
18a36d72af 更新下载链接 2022-05-21 21:47:43 +08:00
星外之神
24384fd00d 更改异常处理 2022-05-21 21:03:26 +08:00
星外之神
82169e72f5 更新下载指引 2022-05-21 20:13:41 +08:00
星外之神
e841f178b2 更改下载地址 2022-05-21 19:54:52 +08:00
星外之神
11effc6f9e 保证Nuitka版本在最前面 2022-05-21 19:53:30 +08:00
星外之神
903eabf2bb 更改构建标签名 2022-05-21 19:34:44 +08:00
星外之神
ea44455186 自动构建发布 2022-05-21 19:30:58 +08:00
星外之神
c118caf021 整理构建代码 2022-05-21 19:18:34 +08:00
星外之神
c6689eca7e 自动构建发布 2022-05-21 19:06:06 +08:00
星外之神
2a294d0593 更改pyinstaller命令 2022-05-21 18:53:11 +08:00
星外之神
39c4cb2e6d 修改pyinstaller命令 2022-05-21 18:39:50 +08:00
星外之神
b9e56894d2 增加pyinstaller打包版本 2022-05-21 18:23:09 +08:00
星外之神
66a31cf97a 暂时不用python3.11构建 2022-05-21 14:12:00 +08:00
星外之神
3593bebf9e 更改构建命令 2022-05-21 14:09:46 +08:00
星外之神
3d70794b9d 自动构建遇到错误不再跳出 2022-05-21 13:19:35 +08:00
星外之神
2273eeab05 增加ordered-set编译优化依赖 2022-05-21 13:09:48 +08:00
星外之神
d6e02acf02 增加报纸僵尸疑惑时间;增加报纸撕裂音效;增加潜水僵尸部分素材 2022-05-21 12:59:21 +08:00
星外之神
598303ae16 更新链接 2022-05-20 22:57:12 +08:00
星外之神
55af6f17d6 增加readme中的链接 2022-05-20 22:36:38 +08:00
星外之神
3660801790 更新构建规则 2022-05-20 22:34:28 +08:00
星外之神
48317624c6 对已选中的卡片区别显示 2022-05-20 21:02:41 +08:00
星外之神
1e1c012850 优化上传内容 2022-05-20 19:36:10 +08:00
星外之神
71e9b64046 禁止多个构建任务同时进行 2022-05-20 19:24:49 +08:00
星外之神
c82bb47511 尝试artifact调用 2022-05-20 19:21:14 +08:00
星外之神
c899637b68 更新下载地址 2022-05-20 19:10:07 +08:00
星外之神
f5d6371eb8 更改标签名 2022-05-20 18:55:29 +08:00
星外之神
57974043d2 更改非法tag名称 2022-05-20 18:53:31 +08:00
星外之神
27d6236003 更新构建配置 2022-05-20 18:37:10 +08:00
星外之神
332b47ede1 更改构建配置 2022-05-20 18:20:14 +08:00
星外之神
e1fb2a6ecf 更改备注信息 2022-05-20 17:33:53 +08:00
星外之神
9434ee08d1 修复构建错误 2022-05-20 17:33:06 +08:00
星外之神
babeb1303b 修复构建错误 2022-05-20 17:22:10 +08:00
星外之神
e1e7dc9b27 尝试自动构建 2022-05-20 17:14:52 +08:00
星外之神
909b83ae3c 微调逻辑 2022-05-20 14:52:08 +08:00
星外之神
c68cc7c4d5 优化大嘴花设定,增加掉头僵尸可以吸引豌豆类植物攻击的功能 2022-05-20 14:50:13 +08:00
星外之神
cb23817b0d 修复樱桃炸弹爆炸闪退bug,修复撑杆跳触发土豆雷的bug 2022-05-20 11:43:12 +08:00
星外之神
0ad4597eef 更改僵尸被小推车杀死时的动画 2022-05-18 23:00:02 +08:00
星外之神
8ed01975dc 修复撑杆跳生成位置过分靠后的bug 2022-05-16 18:07:19 +08:00
星外之神
c37208bfb2 更改毁灭菇爆炸范围 2022-05-15 23:49:52 +08:00
星外之神
b2d62deaed 更改寒冰菇攻击范围 2022-05-15 22:52:53 +08:00
星外之神
e080fd04b3 更改植物高亮间隔 2022-05-15 22:46:51 +08:00
星外之神
7ca605afa0 修复撑杆跳显示bug 2022-05-15 22:17:08 +08:00
星外之神
3ba55a202e 修改僵尸生成位置判定方式 2022-05-15 21:30:32 +08:00
星外之神
0057d231be 坚果保龄球拟合铁门需要砸3次的设定 2022-05-15 20:32:40 +08:00
星外之神
8faf17edec 优化坚果保龄球对铁门的伤害形式,实现弹射碰撞铁门时秒杀 2022-05-15 20:15:24 +08:00
星外之神
47ec6367c8 整理代码 2022-05-15 19:49:07 +08:00
星外之神
bd59b16905 基本转移level.py文件中的常数信息到constants.py 2022-05-15 19:29:30 +08:00
星外之神
9db49f77ee 简化墓碑机制 2022-05-15 16:11:22 +08:00
星外之神
22a0b48820 微调睡莲图片 2022-05-15 15:58:14 +08:00
星外之神
2eff1506e9 删除冗余 2022-05-15 15:47:58 +08:00
星外之神
f8be222caf 统一变量名,更改大嘴花攻击实现本质 2022-05-15 15:46:14 +08:00
星外之神
c87f5b3dc8 维护清理 2022-05-15 14:32:43 +08:00
星外之神
9d56c8a73c 维护清理 2022-05-15 14:28:29 +08:00
星外之神
cd32e142e0 维护清理 2022-05-15 14:15:48 +08:00
星外之神
25bf28e4f4 修复撑杆跳被同一行的寒冰菇冻结后丢失杆的bug 2022-05-15 13:17:45 +08:00
星外之神
6f6594db9c 删除冗余 2022-05-15 09:30:19 +08:00
星外之神
6bc813ce8e 倭瓜改为双碰撞检测 2022-05-14 23:36:30 +08:00
星外之神
e17c16927f 倭瓜位置判断改为重叠20像素 2022-05-14 23:33:33 +08:00
星外之神
2c140577a1 更改倭瓜碰撞检测 2022-05-14 23:23:12 +08:00
星外之神
5bc89e1b81 加入倭瓜碾压音效 2022-05-14 23:11:55 +08:00
星外之神
f34e00c361 修复毁灭菇坑会遮住蘑菇云的bug 2022-05-14 22:40:37 +08:00
星外之神
1fe841dcb3 将爆炸伤害时间由爆炸结束时改为爆炸开始时 2022-05-14 21:31:32 +08:00
星外之神
3a53f772ce 将车改为按行绘制;豌豆通过火炬树桩继承之前的移动轨迹 2022-05-14 19:54:58 +08:00
星外之神
ada7d690eb 冰车被地刺杀死后不立刻爆炸 2022-05-14 19:08:08 +08:00
星外之神
92beb00dff 去除非植物类“死亡”时的音效 2022-05-14 16:34:09 +08:00
星外之神
9260c88e5a 增加冰车爆炸音效 2022-05-14 16:29:11 +08:00
星外之神
0bfb48ea7c 环境要求说明 2022-05-14 14:39:18 +08:00
星外之神
cae76df7d5 修复初始关卡错误 2022-05-14 13:50:30 +08:00
星外之神
245cc0fb4f 加入冰车僵尸生成音效 2022-05-14 13:47:01 +08:00
星外之神
625658202a 冰车僵尸可变速 2022-05-14 13:35:44 +08:00
星外之神
8eaf9e1fde 修复魅惑菇不能发挥作用的bug,修复大喷菇边缘不显示bug 2022-05-14 13:24:54 +08:00
星外之神
afe3a03d44 加入冰车僵尸 2022-05-14 13:03:30 +08:00
星外之神
5bb62383c5 更改冰道设定 2022-05-14 12:01:58 +08:00
星外之神
8a934ebbb1 初步增加冰车僵尸 2022-05-14 11:58:12 +08:00
星外之神
700ebaa7c4 更改小推车存活范围 2022-05-14 00:32:42 +08:00
星外之神
cc70ff46f7 更改杨桃子弹存在空间 2022-05-14 00:30:33 +08:00
星外之神
782a3a1a28 删除冗余 2022-05-13 22:58:14 +08:00
星外之神
5b7f00f9a2 更新子弹最远能到的范围 2022-05-13 00:16:47 +08:00
星外之神
445e6488d6 修复啃咬刷新判断bug 2022-05-12 22:55:04 +08:00
星外之神
e8f001629a 更改刷新啃咬的判断机制 2022-05-12 22:25:32 +08:00
星外之神
dea1c9a2d9 effect本身不是bool,默认值设置为None 2022-05-12 16:17:41 +08:00
星外之神
3d978a737f 墓碑中可以冒出路障僵尸 2022-05-11 23:36:11 +08:00
星外之神
8eb99747ef 更新失败后跳转指向 2022-05-11 23:06:45 +08:00
星外之神
abe10f33a5 调试信息 2022-05-11 20:46:00 +08:00
星外之神
ad985552cc 缩短卡片间隔 2022-05-11 20:34:56 +08:00
星外之神
911ab88c38 修改大嘴花能攻击的范围 2022-05-11 20:08:47 +08:00
星外之神
44a94e1ae3 在选卡时中加入菜单 2022-05-11 19:10:02 +08:00
星外之神
2d1ca899e3 更改大喷菇攻击动画 2022-05-11 17:52:43 +08:00
星外之神
dbcff71bc7 修复土豆雷不攻击的bug 2022-05-11 17:30:14 +08:00
星外之神
ee50c004b3 注释说明 2022-05-11 15:23:22 +08:00
星外之神
2ce597bd48 全面修改碰撞机制 2022-05-11 15:19:13 +08:00
星外之神
46780ee81e 修改土豆雷对撑杆跳的检查机制 2022-05-11 13:13:18 +08:00
星外之神
109265655b 修改掉头僵尸动画 2022-05-11 00:42:22 +08:00
星外之神
319610008e 更新撑杆跳僵尸生命值 2022-05-10 23:52:22 +08:00
星外之神
41538359d9 更改啃咬判断机制 2022-05-10 22:45:59 +08:00
星外之神
02edab3516 增加撑杆跳音效 2022-05-10 22:38:05 +08:00
星外之神
8d6d010933 在白天决战关中加入撑杆跳僵尸 2022-05-10 22:00:21 +08:00
星外之神
fc89acd3a1 用很粗略的方式实现撑杆跳僵尸 2022-05-10 21:58:21 +08:00
星外之神
235b467205 更改小推车设定 2022-05-10 21:20:26 +08:00
星外之神
44adb8f7fc 更新截图 2022-05-10 17:19:18 +08:00
星外之神
4990cf1c31 更新截图 2022-05-10 17:10:52 +08:00
星外之神
b5bdf1234c 修复缠绕水草被死亡僵尸误触的bug 2022-05-10 17:06:56 +08:00
星外之神
e2546e552d 进度说明 2022-05-10 16:59:35 +08:00
星外之神
f9ae8e77b5 修改大喷菇贴图 2022-05-10 16:58:34 +08:00
星外之神
0a98857526 实现大喷菇 2022-05-10 16:42:02 +08:00
星外之神
1d35afd649 增加植物初始攻击间隔,修复咖啡豆bug 2022-05-10 13:51:38 +08:00
星外之神
9cb27a7d86 完善部分大喷菇素材 2022-05-09 23:08:18 +08:00
星外之神
f508bd3976 增加部分图片 2022-05-09 18:09:48 +08:00
星外之神
85283b8242 增加大喷菇部分素材 2022-05-09 17:28:29 +08:00
星外之神
89c72f8db9 增加撑杆跳僵尸与冰车僵尸的部分素材 2022-05-09 16:33:29 +08:00
星外之神
560adeb0ce 改回起始关卡 2022-05-09 10:27:46 +08:00
星外之神
e36a0aeb68 说明 2022-05-09 10:26:22 +08:00
星外之神
2b5034cd6c 增加墓碑种类 2022-05-09 10:21:03 +08:00
星外之神
f69db323ab 更新截图 2022-05-09 09:43:00 +08:00
星外之神
167ed5a1f5 增加最后一大波新增一个墓碑的机制;优化 2022-05-09 09:36:46 +08:00
星外之神
653009c6be 完善植物列表 2022-05-09 00:07:49 +08:00
星外之神
384148af67 增加墓碑吞噬者音效 2022-05-08 23:19:44 +08:00
星外之神
13389bae23 含泳池的模式最后一波从水中生成3个僵尸 2022-05-08 22:59:39 +08:00
星外之神
7dbd6f0b77 增加墓碑在最后一波可以冒出僵尸的功能 2022-05-08 22:34:34 +08:00
星外之神
adad151a8e 加入墓碑和墓碑吞噬者 2022-05-08 21:55:58 +08:00
星外之神
d30eeb725e 去除无用传参 2022-05-08 20:02:40 +08:00
星外之神
a6d10a0972 更新进度完成状况 2022-05-08 18:04:02 +08:00
星外之神
4a527d1946 咖啡豆bug修复说明 2022-05-08 17:53:26 +08:00
星外之神
8656af0d59 新增植物说明 2022-05-08 17:15:55 +08:00
星外之神
24a548a94f 更改啃食豁免逻辑 2022-05-08 17:07:39 +08:00
星外之神
953e6305ac 更新水中的毁灭菇坑 2022-05-08 16:59:54 +08:00
星外之神
ba1e4776f4 加入毁灭菇 2022-05-08 16:51:54 +08:00
星外之神
82f60f3368 说明 2022-05-08 10:44:46 +08:00
星外之神
d96ccf5fa8 增加缠绕水草音效 2022-05-08 10:34:42 +08:00
星外之神
69d9020d3f 更正缠绕水草阳光 2022-05-08 01:28:07 +08:00
星外之神
7229ecf991 更正缠绕水草冷却时间 2022-05-08 01:27:01 +08:00
星外之神
22c946ffc9 修复缠绕水草的bug 2022-05-08 01:02:28 +08:00
星外之神
69848b39e3 加入缠绕水草 2022-05-08 00:46:04 +08:00
星外之神
f51424811b 修复高坚果种植闪退的错误 2022-05-07 23:32:03 +08:00
星外之神
9b020e1b57 加入高坚果 2022-05-07 23:28:15 +08:00
星外之神
4444ec2fa8 碰撞修改 2022-05-07 15:23:36 +08:00
星外之神
4cf625c3f4 说明 2022-05-07 15:14:06 +08:00
星外之神
aa1733526a 更改对random的调用 2022-05-06 23:19:08 +08:00
星外之神
1733a8ea0c 倭瓜改为碰撞检测 2022-05-06 19:19:26 +08:00
星外之神
0f723f43d4 整理掉奇怪的代码 2022-05-06 19:06:22 +08:00
星外之神
640059eb47 改用碰撞函数表示土豆雷攻击 2022-05-06 19:00:52 +08:00
星外之神
4df085cf4c 构建命令 2022-05-06 18:36:03 +08:00
星外之神
cc9a9d0ef3 更改土豆雷设定 2022-05-06 18:32:30 +08:00
星外之神
4f9df6de38 优化音效 2022-05-06 18:13:37 +08:00
星外之神
62976366c1 引入没有雾的浓雾模式 2022-05-06 14:52:27 +08:00
星外之神
3fc37066f4 加入没有雾的浓雾模式 2022-05-06 14:41:35 +08:00
星外之神
ba1788bf5c 修改土豆雷设定 2022-05-06 14:32:07 +08:00
星外之神
1165e083cc 说明 2022-05-06 14:28:53 +08:00
星外之神
3fc01d6a62 在坚果保龄球中加回报纸僵尸 2022-05-06 14:27:31 +08:00
星外之神
39a98e3848 修改音效播放设定,修改刷新设定,加入报纸僵尸暴走音效,优化游戏速度倍率设定 2022-05-06 14:25:39 +08:00
星外之神
1e28521f66 削弱土豆雷攻击范围 2022-05-06 13:32:08 +08:00
星外之神
05d7ad2adb 删除不需要的常数 2022-05-06 13:28:47 +08:00
星外之神
e222687474 更改植物死亡音效触发机制 2022-05-06 13:10:55 +08:00
星外之神
fda640ec30 优化代码结构 2022-05-06 13:04:31 +08:00
星外之神
3e996c103d 加入更多音效 2022-05-06 11:23:31 +08:00
星外之神
d1e1c3757c 更改倭瓜音效播放时间 2022-05-06 10:40:37 +08:00
星外之神
b96b3d9c11 计划内容更新 2022-05-05 23:50:12 +08:00
星外之神
d5080c194d 优化土豆雷音效 2022-05-05 23:23:55 +08:00
星外之神
9ea76dce22 修复部分音效的bug 2022-05-05 23:03:53 +08:00
星外之神
df3e649fd5 更新编译命令 2022-05-05 21:54:18 +08:00
星外之神
ccb1b7622b 说明 2022-05-05 20:48:20 +08:00
星外之神
bcad079977 备注更新 2022-05-05 20:46:42 +08:00
星外之神
a828fa085b 进一步说明 2022-05-05 20:32:31 +08:00
星外之神
c2a64c50cc 对齐 2022-05-05 20:31:32 +08:00
星外之神
9099e12302 大幅改进bgm设定 2022-05-05 20:18:30 +08:00
星外之神
8526d2ed1b 尝试加入音效 2022-05-05 19:18:50 +08:00
星外之神
89445251ec 更改音效时长 2022-05-05 18:36:11 +08:00
星外之神
0ace82ce01 增加部分音效素材 2022-05-05 17:31:44 +08:00
星外之神
c7ad44a840 更改冷却时间 2022-05-05 12:37:24 +08:00
星外之神
a4d778f5fc 加入铁门僵尸 2022-05-05 11:53:34 +08:00
星外之神
a0234e81c7 加入铁门僵尸部分素材 2022-05-05 11:25:32 +08:00
星外之神
a79b8cff71 进一步优化魅惑的僵尸在水池中的行为 2022-05-05 11:13:02 +08:00
星外之神
d1f5d798b4 优化被魅惑僵尸 2022-05-05 11:00:53 +08:00
星外之神
7fad9e1244 优化泳池被魅惑僵尸的行为 2022-05-05 10:50:40 +08:00
星外之神
dbd290357e 计划说明 2022-05-05 09:38:54 +08:00
星外之神
fd944f69af 变更计划 2022-05-05 09:34:10 +08:00
星外之神
f7d4606db4 计划说明 2022-05-05 09:32:24 +08:00
星外之神
bc44f69f55 新增植物说明 2022-05-05 09:26:55 +08:00
星外之神
1d72fc05a2 完善海蘑菇子弹 2022-05-05 09:17:08 +08:00
星外之神
110c5a47c4 加入海蘑菇 2022-05-05 08:55:06 +08:00
星外之神
72a47dfcdc 更改表述 2022-05-04 23:31:17 +08:00
星外之神
7049309d6b 更改胆小菇设定 2022-05-04 22:55:46 +08:00
星外之神
d545205b4e 更新植物列表 2022-05-04 22:50:57 +08:00
星外之神
f26c6071ce 修复魅惑菇bug 2022-05-04 22:46:34 +08:00
星外之神
b62f651f3f 优化代码结构 2022-05-04 22:22:55 +08:00
星外之神
d48260636a 减少变量名歧义 2022-05-04 22:21:24 +08:00
星外之神
33d10028ae 加入咖啡豆 2022-05-04 22:18:11 +08:00
星外之神
41b65c8635 修复水生僵尸浮在陆地上的bug 2022-05-04 19:41:34 +08:00
星外之神
77cfa8fbae 默认关闭调试 2022-05-04 19:07:23 +08:00
星外之神
c91adf2ef2 修复橄榄球等级过低的bug 2022-05-04 19:05:21 +08:00
星外之神
001e63fc56 优化水上生成僵尸方法 2022-05-04 18:30:07 +08:00
星外之神
8ba3c041b4 完整加入水生僵尸 2022-05-04 18:21:47 +08:00
星外之神
b7b26d7597 水上可生成僵尸 2022-05-04 14:25:33 +08:00
星外之神
0b7a969ac6 鸭子救生圈路障 2022-05-04 13:32:32 +08:00
星外之神
bf6a81885e 基本实现鸭子救生圈僵尸 2022-05-04 12:53:17 +08:00
星外之神
94f8329803 加入部分咖啡豆素材 2022-05-04 11:28:49 +08:00
星外之神
4245080c9d 更改bmg判断机制 2022-05-04 10:28:27 +08:00
星外之神
66c6eed456 更改变量名防止歧义 2022-05-04 09:59:19 +08:00
星外之神
03e21550ad 更改变量名防止歧义 2022-05-04 09:57:54 +08:00
星外之神
f99c8cadc4 加入部分鸭子救生圈僵尸的素材 2022-05-03 14:45:43 +08:00
星外之神
5276e90d72 为保证攻击时常平衡,取消时间缩短 2022-05-03 14:25:19 +08:00
星外之神
cf6aab5cda 适当缩短首次攻击间隔的延迟时间 2022-05-03 14:20:09 +08:00
星外之神
90d9aa72df 平衡僵尸攻击力 2022-05-03 14:15:59 +08:00
wszqkzqk
e66f2307cf 增加僵尸啃咬连续性 2022-05-03 14:10:27 +08:00
星外之神
8fd178cf47 微调攻击范围 2022-05-03 13:30:19 +08:00
星外之神
0b45d46fdb 微调攻击范围 2022-05-03 13:15:47 +08:00
星外之神
dfcbff5228 微调攻击范围 2022-05-03 13:12:53 +08:00
星外之神
0a5ce37a73 更新运行条件 2022-05-03 10:32:48 +08:00
星外之神
16b78f4c42 更改执行条件 2022-05-03 10:06:09 +08:00
星外之神
a907076c04 更改模式传递实现方式 2022-05-03 09:53:13 +08:00
星外之神
4a38a0f225 更新述图 2022-05-02 23:13:37 +08:00
星外之神
db2e25e6d2 修改细节和调试功能 2022-05-02 22:57:39 +08:00
星外之神
363a39e6ea 区分输出 2022-05-02 22:20:19 +08:00
星外之神
3871f2f1f4 恢复鼠标指针信息输出 2022-05-02 22:18:22 +08:00
星外之神
66d1aae6b9 删除部分调试内容 2022-05-02 22:17:18 +08:00
星外之神
1939f8b93b 修复体验了小游戏关卡之后冒险博士关卡进度传递失败的bug 2022-05-02 22:16:13 +08:00
星外之神
217c3b608c 平衡难度 2022-05-02 21:49:20 +08:00
星外之神
7746db315d 修复平衡难度过程中的脑残错误 2022-05-02 21:47:28 +08:00
星外之神
830cb79c03 平衡难度 2022-05-02 21:46:57 +08:00
星外之神
9aff1d6b2d 调整数据,使旗帜升起时间与一大波时间对应 2022-05-02 21:09:11 +08:00
星外之神
fc0ac1a54d 微调数据 2022-05-02 19:43:16 +08:00
星外之神
17d399216b 修复数据错误 2022-05-02 19:39:52 +08:00
星外之神
5028f86b03 拟合僵尸出生点 2022-05-02 19:39:01 +08:00
星外之神
4e4a33f066 微调位置 2022-05-02 19:23:11 +08:00
星外之神
f41adb62da 微调位置 2022-05-02 18:56:04 +08:00
星外之神
92a98087c4 微调数据 2022-05-02 18:49:32 +08:00
星外之神
da32c290a1 关卡进程旗帜在达到后可自动升起 2022-05-02 18:45:24 +08:00
星外之神
f402a328bd 增加关卡进程图片 2022-05-02 17:32:04 +08:00
星外之神
dc2d839bea 引入旗帜 2022-05-02 16:51:54 +08:00
星外之神
fa4004ea48 增加关卡进程素材:僵尸头和旗帜 2022-05-02 09:41:19 +08:00
星外之神
70b07098f8 增加关卡进程图片 2022-05-02 09:17:45 +08:00
星外之神
309a6dfbf0 加入部分大喷菇的素材 2022-05-01 22:37:22 +08:00
星外之神
1cb119555d 修复红字提示bug 2022-05-01 22:16:27 +08:00
星外之神
e0f05cda8a 修复判断的逻辑bug 2022-05-01 21:43:24 +08:00
星外之神
c14283d818 一大波僵尸来袭时增加提示 2022-05-01 21:25:57 +08:00
星外之神
4afe2f5d3e 平衡传送带关难度 2022-05-01 11:10:48 +08:00
星外之神
37e3550af6 移除冗余 2022-04-30 14:11:19 +08:00
星外之神
992aae306e 大波先生成旗帜僵尸 2022-04-30 11:57:23 +08:00
星外之神
b72186c8a2 增加指定波数生成僵尸的功能 2022-04-30 11:47:46 +08:00
星外之神
721fb85827
Merge pull request #1 from wszqkzqk/0.5.0
0.5.0
2022-04-30 11:35:18 +08:00
星外之神
3e239141ef 基本实现自动化生成僵尸 2022-04-30 11:33:00 +08:00
星外之神
e4768049ac 尝试引入新僵尸生成机制 2022-04-29 17:39:34 +08:00
星外之神
f09eb5e5ec 缩短播放间隔 2022-04-28 21:16:11 +08:00
星外之神
3792870cf3 修复僵尸贴图显示异常的bug 2022-04-28 13:31:59 +08:00
星外之神
32e57c4136 部分新僵尸生成机制 2022-04-27 20:54:18 +08:00
星外之神
13213ee162 在关卡中加入橄榄球 2022-04-27 12:55:43 +08:00
星外之神
169bef4baa 修复杨桃子弹穿过火炬树时闪退的bug 2022-04-27 12:54:43 +08:00
星外之神
cddf7e1ecb 实现橄榄球僵尸 2022-04-26 23:18:31 +08:00
星外之神
a927fc02fb 加入橄榄球僵尸资源 2022-04-26 22:12:56 +08:00
星外之神
077dd54e0f 加入橄榄球僵尸资源 2022-04-26 22:12:40 +08:00
星外之神
947f31a351 最大阳光数限制 2022-04-25 08:09:22 +08:00
星外之神
97d9b98200 更新截图 2022-04-24 23:56:57 +08:00
星外之神
a0c7bb5bab readme 2022-04-24 22:53:57 +08:00
星外之神
05d106a368 修改杨桃设定 2022-04-24 22:45:47 +08:00
星外之神
dca79c68d1 更新杨桃检测机制 2022-04-24 22:12:15 +08:00
星外之神
9b91d881d0 更改杨桃设定 2022-04-24 18:47:34 +08:00
星外之神
c140a376ba 优化杨桃子弹 2022-04-24 15:17:09 +08:00
星外之神
4c9fd6506f 修复杨桃子弹向后打中僵尸闪退的bug 2022-04-24 13:41:33 +08:00
星外之神
ecbb70d134 合并预览与点击的检查方式 2022-04-24 13:31:59 +08:00
星外之神
d054279e3f 修复图片未显示全的bug 2022-04-24 13:24:37 +08:00
星外之神
a630ca79e4 更改动画播放间隔 2022-04-24 13:17:59 +08:00
星外之神
836999c889 增加点按钮前的动画效果 2022-04-24 13:17:01 +08:00
星外之神
3507eb5972 冰豌豆爆炸时使用独立图片 2022-04-24 00:45:48 +08:00
星外之神
cbfa280893 写了个有一堆bug的杨桃 2022-04-24 00:23:36 +08:00
星外之神
6a218c042e 修改火炬树贴图 2022-04-23 22:18:13 +08:00
星外之神
26ed451083 再写一点杨桃 2022-04-23 20:59:07 +08:00
星外之神
01be40c044 修复三线射手豌豆位置显示bug 2022-04-23 18:57:52 +08:00
星外之神
127bbda80a 为单行、三行草皮加入做好准备 2022-04-23 11:03:25 +08:00
星外之神
0bc71ab340 特性更改:按照原版设定土豆雷也不能在睡莲上种植 2022-04-22 23:20:02 +08:00
星外之神
021ed42f7c 更改不可种植区域的设定 2022-04-22 23:13:19 +08:00
星外之神
8866ac7050 完善注释 2022-04-22 23:04:55 +08:00
星外之神
58bc563578 删除图片冗余部分 2022-04-22 22:37:32 +08:00
星外之神
9305a347d1 将植物在选择菜单种的顺序改为与原版相同 2022-04-22 22:22:27 +08:00
星外之神
bb9dbe3604 避开color_key 2022-04-22 19:32:47 +08:00
星外之神
f4bac801c8 增加卡槽数 2022-04-22 19:18:51 +08:00
星外之神
416c6239b1 更新截图 2022-04-22 16:11:17 +08:00
星外之神
064ed3569e 修复拼写错误带来的笑话 2022-04-22 16:07:03 +08:00
星外之神
3bcd43137a 修复拼写错误带来的笑话 2022-04-22 16:05:32 +08:00
星外之神
5d444371da 修复火炬树不耗阳光的bug 2022-04-22 15:52:21 +08:00
星外之神
8344c2e121 修复睡莲贴图靠上的bug 2022-04-22 15:42:09 +08:00
星外之神
b78e97b2b1 修复僵尸会在上面有植物时把睡莲啃掉的bug 2022-04-22 14:40:48 +08:00
星外之神
ccbfda85b5 铲子优先对睡莲上的植物而非睡莲生效 2022-04-22 14:30:08 +08:00
星外之神
7acbb320d2 汇总更新内容 2022-04-21 21:45:36 +08:00
星外之神
5398442bc0 新增植物:火炬树桩 2022-04-21 21:40:42 +08:00
星外之神
6447727b2f 增加部分素材 2022-04-21 09:27:30 +08:00
星外之神
d2bc785f8e 修复倭瓜生效后不能在原种植位置种植植物的bug 2022-04-21 00:15:41 +08:00
星外之神
ced6b55b2b 增加部分素材 2022-04-20 23:24:42 +08:00
星外之神
64587b8bff 区别透明度 2022-04-20 22:46:13 +08:00
星外之神
369bdcf747 更改卡片间隔 2022-04-20 22:29:24 +08:00
星外之神
4d4403a023 修复传送带模式图片过大的bug 2022-04-20 16:34:15 +08:00
星外之神
be176ed345 顺序修改 2022-04-20 16:28:15 +08:00
星外之神
7846003b22 初步实现睡莲 2022-04-20 16:21:51 +08:00
星外之神
9f3d2eae91 加入睡莲 2022-04-20 14:37:23 +08:00
星外之神
008fe52c9e 压缩体积 2022-04-19 19:52:54 +08:00
星外之神
e9460229fe 更改透明度设定,压缩音乐体积 2022-04-19 18:59:03 +08:00
星外之神
b1941820c6 铲子指向多个植物时只高亮将移除的那一个 2022-04-19 00:47:56 +08:00
星外之神
8d513fab5d 截图更新 2022-04-18 09:33:47 +08:00
星外之神
26e49297e5 修复报纸被非灰烬植物秒杀后会触发加速的bug 2022-04-18 09:23:35 +08:00
星外之神
81c8d3d3a5 更改坚果保龄球伤害 2022-04-17 21:36:32 +08:00
星外之神
f057771c60 掉头僵尸假攻击不再触发植物高亮 2022-04-17 21:23:06 +08:00
星外之神
45ff017943 更新说明 2022-04-17 21:05:24 +08:00
星外之神
5556852ba6 修复闪退bug 2022-04-17 20:57:45 +08:00
星外之神
88c09f6a9d 更改检查是否可以种植的机制 2022-04-17 20:36:58 +08:00
星外之神
fdc86eb0c3 修复水中可以直接种普通植物的bug 2022-04-17 19:34:26 +08:00
星外之神
2532f8e325 初步加入泳池模式 2022-04-17 18:43:08 +08:00
星外之神
5117d01d66 避免黑色显示透明 2022-04-17 13:03:09 +08:00
星外之神
bb6f9a8b10 更改卡片间距 2022-04-17 11:22:39 +08:00
星外之神
124ccc0e15 默认选卡数=最大选卡数才能进入下一关 2022-04-16 10:03:39 +08:00
星外之神
02d3bb467f 备注 2022-04-16 02:27:15 +08:00
星外之神
caa64b42f6 画饼 2022-04-14 09:30:40 +08:00
星外之神
729668e7fa 更新截图 2022-04-14 09:27:40 +08:00
星外之神
b1e5a6fc26 修复小游戏完成后不能进入冒险模式的bug 2022-04-14 08:58:52 +08:00
星外之神
62c5733817 更新计划说明 2022-04-14 00:22:53 +08:00
星外之神
d495aef2f9 修复僵尸状态检查bug;更改贴图位置;改变僵尸动画帧率;增加铲子导入检查;修复喷菇子弹有冰冻的bug 2022-04-13 23:16:19 +08:00
星外之神
fa58f317cc 说明更新 2022-04-13 19:57:22 +08:00
星外之神
567541beae 统一透明度 2022-04-13 19:48:23 +08:00
星外之神
7c807acb4e 铲子接近植物时会高亮提示 2022-04-13 19:42:05 +08:00
星外之神
236685e832 注释序号修改 2022-04-13 19:08:59 +08:00
星外之神
11e8eb8e6e 优化:寒冰射手无法减速持有二类防具的僵尸
新增:坚果保龄球单独的攻击模式
修改:读报僵尸、旗帜僵尸生命值、移动速度恢复原版设定
2022-04-13 19:03:13 +08:00
星外之神
05d34c3a7b 更新已完成进度 2022-04-13 17:00:20 +08:00
星外之神
2333f47416 修复没有防具时不受范围伤害的bug 2022-04-13 16:50:38 +08:00
星外之神
c41f1349ce 修复变量名错误 2022-04-13 16:46:36 +08:00
星外之神
c82b1e3b92 增加fallback 2022-04-13 16:40:34 +08:00
星外之神
ffba6b71f1 注释完善 2022-04-13 16:34:37 +08:00
星外之神
e329e60487 完善攻击处理 2022-04-13 16:33:21 +08:00
星外之神
97223185de 修复一般子弹的攻击类型问题 2022-04-13 16:07:08 +08:00
星外之神
67708efa32 从理论上实现僵尸本体和防具的区别 2022-04-13 16:03:51 +08:00
星外之神
96271fbfe1 修复土豆雷使用闪退的bug 2022-04-13 14:36:22 +08:00
星外之神
03558a6899 更新贴图 2022-04-13 14:18:29 +08:00
星外之神
36af33c562 更改贴图位置 2022-04-13 14:01:34 +08:00
星外之神
846d39d695 删除冗余文件 2022-04-13 01:03:14 +08:00
星外之神
698a172c07 缩小体积 2022-04-13 00:54:15 +08:00
星外之神
2e61f3e4b4 增加素材 2022-04-13 00:50:36 +08:00
星外之神
dc259579ce 修复模式切换bug 2022-04-12 23:31:45 +08:00
星外之神
5911f10f1b 实现小游戏与冒险模式分开计数关卡 2022-04-12 23:20:07 +08:00
星外之神
0f699394a4 更改冰冻 2022-04-12 22:42:41 +08:00
星外之神
d5a8f9c124 按照原版设定,不隐藏鼠标 2022-04-12 22:38:07 +08:00
星外之神
764e9b7eef 按照原版设定,不隐藏鼠标 2022-04-12 22:36:41 +08:00
星外之神
66e2b9e47e 铲子移除植物不触发植物功能 2022-04-12 22:29:11 +08:00
星外之神
7bacfef07e 真正修复pvz炸弹爆炸的时候僵尸贴图透明的bug 2022-04-12 22:03:53 +08:00
星外之神
19fc29009d 修复爆炸后僵尸黑色不显示 2022-04-12 00:15:44 +08:00
星外之神
9dc66c1b7a 缩小双发射手两发之间的间隔 2022-04-10 21:12:57 +08:00
星外之神
de88801e24 加快子弹移动速度 2022-04-10 20:54:21 +08:00
星外之神
9fdd050a66 地刺改进 2022-04-09 22:24:29 +08:00
星外之神
31968ea817 bug汇总 2022-04-09 17:08:00 +08:00
星外之神
ffa2f497f5 修复点阳光时误触到其他按钮的bug 2022-04-09 15:43:12 +08:00
星外之神
3e47fbd633 将小推车晚于其他渲染 2022-04-09 12:43:06 +08:00
星外之神
1f42c0271f 修改小推车实现方式 2022-04-09 12:02:46 +08:00
星外之神
96a6a019b6 更改土豆雷触发机制,更改小推车碰撞范围 2022-04-09 11:27:37 +08:00
星外之神
585f898113 修改辣椒攻击范围 2022-04-09 00:48:07 +08:00
星外之神
cd2e2b66d8 去除废弃数据 2022-04-08 23:07:38 +08:00
星外之神
1f3181a3c1 使用原版模式进行濒死僵尸处理 2022-04-08 22:55:04 +08:00
星外之神
fcd6714389 画饼 2022-04-08 19:37:32 +08:00
星外之神
c97ef49a8c 画饼 2022-04-08 19:11:18 +08:00
星外之神
56c7c10ae6 更改阳光掉落机制 2022-04-08 19:04:55 +08:00
星外之神
b7d1aabe0e 注释 2022-04-08 18:48:21 +08:00
星外之神
8a195208d4 注释画饼 2022-04-08 18:45:20 +08:00
星外之神
b74ebbc2cf 注释 2022-04-08 18:42:22 +08:00
星外之神
6fd5607235 注释 2022-04-08 18:17:55 +08:00
星外之神
e41165170a 已知bug更新 2022-04-08 16:50:00 +08:00
星外之神
07bc480d5f 计划 2022-04-08 16:29:57 +08:00
星外之神
8c53b32010 汇总bug 2022-04-08 16:09:09 +08:00
星外之神
29d4a39fd0 画饼 2022-04-08 16:06:56 +08:00
星外之神
916f3bcb8f 为画的饼做准备:优化僵尸y坐标生成 2022-04-08 15:56:03 +08:00
星外之神
6dfd5a4a17 更改双发射手的实现逻辑,更改子弹起始位置 2022-04-08 15:40:59 +08:00
星外之神
7aa5c8265e 改进动画 2022-04-08 15:16:10 +08:00
星外之神
3e4663a26d 优化动画效果 2022-04-08 15:00:35 +08:00
星外之神
dc02965354 实现僵尸坐标随机生成 2022-04-08 13:22:06 +08:00
星外之神
e64762dc35 改进混乱的变量名 2022-04-08 02:40:14 +08:00
星外之神
42b9d505c4 修复暂停游戏时僵尸与阳光的生成仍在计时的bug 2022-04-07 23:26:02 +08:00
星外之神
e29a1a2567 修复暂停了但是没有完全暂停的bug 2022-04-07 23:22:39 +08:00
星外之神
ada477c5a5 添加注释 2022-04-07 22:59:45 +08:00
星外之神
4ed1f0a7ef 修复僵尸在用铲子移除植物后还在原位啃食的bug 2022-04-07 13:20:15 +08:00
星外之神
b6e0961d2b 将炸弹伤害改为1800,为巨人作准备 2022-04-07 13:03:19 +08:00
星外之神
21b0611b22 更改地刺、倭瓜攻击范围 2022-04-07 12:55:28 +08:00
星外之神
bcae34ba1a 避免版权问题 2022-04-07 00:14:21 +08:00
星外之神
54abf8d5a1 说明 2022-04-07 00:11:13 +08:00
星外之神
e7b5e88ad9 说明 2022-04-07 00:10:00 +08:00
星外之神
9ef05b2226 修复已经死亡的僵尸会触发的问题 2022-04-06 23:27:55 +08:00
星外之神
8019b4d254 删除冗余 2022-04-06 23:17:53 +08:00
星外之神
2c3abb8800 实现倭瓜、地刺范围伤害 2022-04-06 23:14:06 +08:00
星外之神
1aabacdd92 完整代码 2022-04-06 21:15:01 +08:00
星外之神
6a5384ae95 说明 2022-04-06 20:25:44 +08:00
星外之神
7f06924841 更改排布 2022-04-06 20:22:51 +08:00
星外之神
73d1fa1423 计划与已知bug分开 2022-04-06 20:16:44 +08:00
wszqkzqk
232ebfdf60 增加png图标 2022-04-06 16:53:11 +08:00
星外之神
3df684594a 计划 2022-04-06 13:23:57 +08:00
星外之神
8e56636e90 计划 2022-04-06 13:13:38 +08:00
星外之神
8902f97dea 计划更新 2022-04-06 13:09:44 +08:00
星外之神
cccfc639b7 计划更新 2022-04-06 13:09:17 +08:00
星外之神
603c9d4257 数据修改 2022-04-06 12:48:57 +08:00
星外之神
ad750a5aec 计划 2022-04-06 00:06:43 +08:00
星外之神
bb3d39c4ed 更改计划 2022-04-06 00:05:22 +08:00
星外之神
641dba13a8 添加注释 2022-04-05 23:17:34 +08:00
星外之神
0840bb5fda 修复魅惑菇的bug 2022-04-05 23:14:23 +08:00
星外之神
09781d497c 编译说明 2022-04-05 21:51:14 +08:00
星外之神
bfa4445b24 铲子使用后自动复原 2022-04-05 21:38:41 +08:00
星外之神
74e79df465 编译命令 2022-04-05 20:27:33 +08:00
星外之神
12364b3ed8 图片地址更改 2022-04-05 19:44:01 +08:00
星外之神
0c4a2f2455 Updated by update.sh 2022-04-05 18:24:26 +08:00
星外之神
a4104a914c GPL 2022-04-05 18:16:15 +08:00
星外之神
3cdac076e6 GPL 2022-04-05 18:14:46 +08:00
星外之神
f0aee7e9e8 readme 2022-04-05 18:10:25 +08:00
星外之神
55ccda2a7c readme 2022-04-05 18:09:41 +08:00
星外之神
a76df3e4f6 readme 2022-04-05 18:07:23 +08:00
星外之神
bb86605cae readme 2022-04-05 18:04:40 +08:00
星外之神
6ef07eb443 GPL开源 2022-04-05 17:59:08 +08:00
星外之神
7782b7bc61 readme 2022-04-05 17:54:20 +08:00
星外之神
8c3aa90f10 更新截图 2022-04-05 17:51:16 +08:00
星外之神
43da630394 更改设计 2022-04-05 17:40:57 +08:00
星外之神
0c9d7f1468 修复铲子铲出来的空位上无法种植物的bug 2022-04-05 17:19:37 +08:00
星外之神
ca1a080aef readme 2022-04-05 16:26:31 +08:00
星外之神
87dfd57d68 更改数据以贴近原版 2022-04-05 16:07:49 +08:00
星外之神
793eb701a7 更改冷冻特性 2022-04-05 13:07:44 +08:00
星外之神
84c78e65b7 readme 2022-04-05 12:11:45 +08:00
星外之神
bd50002933 readme 2022-04-05 11:29:17 +08:00
星外之神
5fa089dd19 readme 2022-04-05 11:28:25 +08:00
星外之神
e1dfa8558f 更改大嘴花攻击范围 2022-04-05 11:11:06 +08:00
星外之神
c0db550d67 更改僵尸死亡后存在时间 2022-04-05 10:53:48 +08:00
星外之神
6bcae32dc9 修复所有关卡完成后直接闪退的bug 2022-04-05 10:37:57 +08:00
星外之神
c1e511ffe8 readme 2022-04-05 02:10:10 +08:00
星外之神
c8a14f1cf9 计划 2022-04-05 01:48:46 +08:00
星外之神
349c9b75f8 更新说明 2022-04-05 01:40:31 +08:00
星外之神
ab56c3ddf7 更改opus编码以节约体积 2022-04-05 01:38:04 +08:00
星外之神
d048ab0ada 更改readme结构 2022-04-04 23:33:03 +08:00
星外之神
e4c5a30cb5 打包libvorbisfile-3.dll 2022-04-04 23:17:37 +08:00
星外之神
a32abdf1cb 方法说明 2022-04-04 21:14:37 +08:00
星外之神
b196a4c741 features 2022-04-04 21:11:57 +08:00
星外之神
8aaf265aa0 计划 2022-04-04 21:09:46 +08:00
星外之神
2a9802a46f 计划 2022-04-04 21:06:58 +08:00
星外之神
375cd67b92 计划 2022-04-04 21:04:18 +08:00
星外之神
b0b119aba9 增加BMG 2022-04-04 20:49:21 +08:00
星外之神
4eea5c5431 删除遗留记号 2022-04-04 14:31:20 +08:00
星外之神
4b1128120b 修复大嘴花bug 2022-04-04 14:27:20 +08:00
星外之神
17239cab5c 大嘴花特性修改 2022-04-04 13:51:43 +08:00
星外之神
6e14a6ac43 增加全屏模式快捷键 2022-04-04 13:30:21 +08:00
1735 changed files with 7683 additions and 1453 deletions

142
.github/workflows/build-pr.yml vendored Normal file
View File

@ -0,0 +1,142 @@
name: "Build for PR"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
pull_request:
jobs:
windows:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
name: Windows Python ${{ matrix.python_version }}
steps:
- uses: actions/checkout@v2
- uses: ilammy/msvc-dev-cmd@v1
- name: Use Python ${{ matrix.python_version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python_version }}
- name: 🧳 Install dependencies
run: |
echo y | pip install --no-python-version-warning --disable-pip-version-check pyinstaller
echo y | pip install --no-python-version-warning --disable-pip-version-check nuitka
echo y | pip install --no-python-version-warning --disable-pip-version-check zstandard
echo y | pip install --no-python-version-warning --disable-pip-version-check pygame
echo y | pip install --no-python-version-warning --disable-pip-version-check ordered-set
# 使用pyinstaller构建
- name: Build pypvz with pyinstaller
run: |
pyinstaller -F pypvz.py `
-n pypvz-with-python${{ matrix.python_version }}-pyinstaller-x64.exe `
--distpath ./out `
--noconsole `
--add-data="resources;./resources" `
--add-data="pypvz-exec-logo.png;./pypvz-exec-logo.png" `
-i ./pypvz.ico
- name: Release the version built by pyinstaller
if: github.event.pull_request.head.repo.full_name == github.repository
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Dev.Version.Built.with.Pyinstaller
artifacts: ./out/*pyinstaller*.exe
token: ${{ secrets.GITHUB_TOKEN }}
# 使用Nuitka构建
- name: Show nuitka version
run: |
Get-ChildItem env:
python -m nuitka --version
- name: Build pypvz with Nuitka
run: |
echo y | python -m nuitka --standalone `
--onefile `
--show-progress `
--show-memory `
--output-dir=out `
--windows-icon-from-ico=pypvz.ico `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libogg-0.dll=libogg-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopus-0.dll=libopus-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libjpeg-9.dll=libjpeg-9.dll `
--include-data-dir=resources=resources `
--windows-disable-console `
-o pypvz-with-python${{ matrix.python_version }}-nuitka-windows-x64.exe `
pypvz.py
- name: Release the version built by nuitka
if: github.event.pull_request.head.repo.full_name == github.repository
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Dev
artifacts: ./out/*nuitka*.exe
token: ${{ secrets.GITHUB_TOKEN }}
linux:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
name: Ubuntu Python ${{ matrix.python_version }}
steps:
- name: 🛎️ Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: 🐍 Use Python ${{ matrix.python_version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python_version }}
- name: 🧳 Install dependencies
run: |
sudo apt-get update
sudo apt-get install patchelf gdb ccache libfuse2 zstd tar
python -m pip install --no-python-version-warning --disable-pip-version-check zstandard appdirs ordered-set tqdm Jinja2
python -m pip install --no-python-version-warning --disable-pip-version-check nuitka
python -m pip install --no-python-version-warning --disable-pip-version-check pygame
# 使用Nuitka构建
- name: Show nuitka version
run: |
env
python -m nuitka --version
- name: Build pypvz with Nuitka
run: |
yes | python -m nuitka \
--onefile \
--standalone \
--include-data-dir=resources=resources \
--linux-onefile-icon=pypvz.png \
--static-libpython=no \
--remove-output \
-o pypvz-with-python${{ matrix.python_version }}-linux-x86_64.bin \
pypvz.py
- name: Release the version built by nuitka
if: github.event.pull_request.head.repo.full_name == github.repository
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Dev
artifacts: ./pypvz*-x86_64.*
token: ${{ secrets.GITHUB_TOKEN }}

141
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,141 @@
name: Build
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
- master
jobs:
windows:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
name: Windows Python ${{ matrix.python_version }}
steps:
- uses: actions/checkout@v2
- uses: ilammy/msvc-dev-cmd@v1
- name: Use Python ${{ matrix.python_version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python_version }}
- name: 🧳 Install dependencies
run: |
echo y | pip install --no-python-version-warning --disable-pip-version-check pyinstaller
echo y | pip install --no-python-version-warning --disable-pip-version-check nuitka
echo y | pip install --no-python-version-warning --disable-pip-version-check zstandard
echo y | pip install --no-python-version-warning --disable-pip-version-check pygame
echo y | pip install --no-python-version-warning --disable-pip-version-check ordered-set
# 使用pyinstaller构建
- name: Build pypvz with pyinstaller
run: |
pyinstaller -F pypvz.py `
-n pypvz-with-python${{ matrix.python_version }}-pyinstaller-x64.exe `
--distpath ./out `
--noconsole `
--add-data="resources;./resources" `
--add-data="pypvz-exec-logo.png;./pypvz-exec-logo.png" `
-i ./pypvz.ico
- name: Release the version built by pyinstaller
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Current.Version.Built.with.Pyinstaller
artifacts: ./out/*pyinstaller*.exe
token: ${{ secrets.GITHUB_TOKEN }}
# 使用Nuitka构建
- name: Show nuitka version
run: |
Get-ChildItem env:
python -m nuitka --version
- name: Build pypvz with Nuitka
run: |
echo y | python -m nuitka --standalone `
--onefile `
--show-progress `
--show-memory `
--output-dir=out `
--windows-icon-from-ico=pypvz.ico `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libogg-0.dll=libogg-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopus-0.dll=libopus-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll `
--include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libjpeg-9.dll=libjpeg-9.dll `
--include-data-dir=resources=resources `
--windows-disable-console `
-o pypvz-with-python${{ matrix.python_version }}-nuitka-windows-x64.exe `
pypvz.py
- name: Release the version built by nuitka
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Latest
artifacts: ./out/*nuitka*.exe
token: ${{ secrets.GITHUB_TOKEN }}
linux:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python_version:
- "3.12"
name: Ubuntu Python ${{ matrix.python_version }}
steps:
- name: 🛎️ Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: 🐍 Use Python ${{ matrix.python_version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python_version }}
- name: 🧳 Install dependencies
run: |
sudo apt-get update
sudo apt-get install patchelf gdb ccache libfuse2 zstd tar
python -m pip install --no-python-version-warning --disable-pip-version-check zstandard appdirs ordered-set tqdm Jinja2
python -m pip install --no-python-version-warning --disable-pip-version-check nuitka
python -m pip install --no-python-version-warning --disable-pip-version-check pygame
# 使用Nuitka构建
- name: Show nuitka version
run: |
env
python -m nuitka --version
- name: Build pypvz with Nuitka
run: |
yes | python -m nuitka \
--onefile \
--standalone \
--include-data-dir=resources=resources \
--linux-onefile-icon=pypvz.png \
--static-libpython=no \
--remove-output \
-o pypvz-with-python${{ matrix.python_version }}-linux-x86_64.bin \
pypvz.py
- name: Release the version built by nuitka
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: Latest
artifacts: ./pypvz*-x86_64.*
token: ${{ secrets.GITHUB_TOKEN }}

15
.gitignore vendored
View File

@ -1,9 +1,14 @@
<<<<<<< HEAD
# ignore debug
# 忽略构建内容
out/
build/
test-build/
release/
# 忽略调试内容
.vscode/
# 忽略 Pycharm 项目文件
.idea/
__pycache__/
*/__pycache__/
# ignore test
test.py
# 忽略测试文件
test*.py
# uv 管理的虚拟环境
.venv

1
.python-version Normal file
View File

@ -0,0 +1 @@
3.12

343
README.md
View File

@ -1,61 +1,338 @@
## Python版植物大战僵尸
植物大战僵尸游戏的Python实现
`仅供个人学习和非商业用途。如果这个游戏侵犯了版权,请告诉我`
* 已有的植物:向日葵,豌豆射手,坚果墙,寒冰射手,樱桃炸弹,三线射手,大嘴花,小喷菇,土豆雷,地刺,胆小菇,倭瓜,火爆辣椒,阳光菇,寒冰菇,魅惑菇
* 已有的僵尸:普通僵尸,旗帜僵尸,路障僵尸,铁桶僵尸,读报僵尸
* 使用 JSON 格式的文件存储进度数据 (例如僵尸出现的位置和时间,背景信息)
植物大战僵尸游戏的Python实现基于[marblexu的项目进行创作](https://github.com/marblexu/PythonPlantsVsZombies),部分代码也整合自[callmebg的项目](https://github.com/callmebg/PythonPlantsVsZombies)
**本项目为个人python语言学习的练习项目仅供个人学习和研究使用不得用于其他用途。如果这个游戏侵犯了版权请联系我删除**
* 已有的植物:向日葵,豌豆射手,坚果墙,寒冰射手,樱桃炸弹,双发射手,三线射手,大嘴花,小喷菇,土豆雷,地刺,胆小菇,倭瓜,火爆辣椒,阳光菇,寒冰菇,魅惑菇,火炬树桩,睡莲,杨桃,咖啡豆,海蘑菇,高坚果,缠绕水草,毁灭菇,墓碑吞噬者,大喷菇,大蒜,南瓜头
* 已有的僵尸:普通僵尸,旗帜僵尸,路障僵尸,铁桶僵尸,读报僵尸,橄榄球僵尸,鸭子救生圈僵尸,铁门僵尸,撑杆跳僵尸,冰车僵尸,潜水僵尸
* 使用JSON文件记录关卡信息数据
* 在0.8.18.0及以后直接用python记录关卡的不可变数据JSON目前仅用于用户存档
* 支持选择植物卡片
* 支持白昼模式,夜晚模式,传送带模式和坚果保龄球模式
* 支持白昼模式,夜晚模式,泳池模式,浓雾模式(暂时没有加入雾),传送带模式和坚果保龄球模式
* 支持背景音乐播放
* 支持调节音量
* 支持音效
* 支持与背景音乐一起调节音量
* 支持全屏模式
* 按`F`键进入全屏模式,按`U`键恢复至窗口模式
* 支持用小铲子移除植物
* 支持分波生成僵尸
* 支持“关卡进程”进度条显示
* 夜晚模式支持墓碑以及从墓碑生成僵尸
* 含有泳池的模式支持在最后一波时从泳池中自动冒出僵尸
* 支持保存进度
* Windows下默认进度文件的保存路径为`~\AppData\Roaming\pypvz\userdata.json`
* 其他操作系统为`~/.config/pypvz/userdata.json`
* 存档为JSON文件如果出现因存档损坏而造成程序无法启动可以手动编辑修复或者删除该文件重试
* 0.8.12.0版本后理论上不可能因为存档损坏而无法启动,如果有,请在[issues](https://github.com/wszqkzqk/pypvz/issues)中报告bug
* 仍然有可能因为升级后变量名不同而丢失存档的进度信息,这种情况手动编辑恢复即可
* 支持错误日志记录
* Windows下默认日志文件的保存路径为`~\AppData\Roaming\pypvz\run.log`
* 其他操作系统为`~/.config/pypvz/run.log`
* 支持自定义游戏速度倍率
* 保存在游戏存档文件中,可以通过修改`game rate`值更改速度倍率
* 游戏完成成就显示
* 任意一游戏模式全部完成显示银向日葵奖杯
* 所有模式全部完成显示金向日葵奖杯
* 光标移动到向日葵奖杯上是显示当前各个模式通关次数
* 含有游戏帮助界面 QwQ
## 环境要求
## 环境安装
* Python >= 3.7
* Python-Pygame >= 1.9
建议使用 [uv](https://docs.astral.sh/uv/) 安装依赖:
```bash
git clone https://github.com/wszqkzqk/pypvz.git
cd pypvz
uv sync
```
或者参考:
* `Python3` (建议 >= 3.10,最好使用最新版)
* `Python-Pygame` (建议 >= 2.0,最好使用最新版)
## 开始游戏
### 使用仓库源代码
先克隆仓库内容,再运行`pypvz.py`
```shell
python main.py
git clone https://github.com/wszqkzqk/pypvz.git
cd pypvz
python pypvz.py
```
### 使用Windows可执行文件
下载`pypvz.exe`文件,双击运行即可
- 可以在仓库的[`Releases`](https://github.com/wszqkzqk/pypvz/releases)页面中[下载最新版(点击跳转)](https://github.com/wszqkzqk/pypvz/releases/latest)(推荐):
- 使用GCC编译
- 程序包含名称、版本等信息
- 得到的验证最多
- 并非每次提交都会更新,更新可能不及时
- 也可以直接下载GitHub Workflow[自动利用Nuitka构建的版本点击跳转](https://github.com/wszqkzqk/pypvz/releases/tag/Latest)(推荐):
- 使用MSVC编译
- 每次合并提交到主分支时更新
- 得到的验证较多
- 服务器构建,编译环境更纯粹,冗余更少,体积更小
- 还可以下载GitHub Workflow[自动利用Pyinstaller构建的版本点击跳转](https://github.com/wszqkzqk/pypvz/releases/tag/Current.Version.Built.with.Pyinstaller)
- 在程序闪退时有报错窗口弹出
- 程序性能较差,不推荐
- 均仅支持64位操作系统
- 不依赖python、pygame等外部环境开箱即用
### 使用Linux可执行文件
由于Linux几乎都标配了Python环境因此本程序不太重视Linux下可执行的单文件的维护因此没有手动构建版只能下载自动构建的软件包。可以在仓库的[`Releases`](https://github.com/wszqkzqk/pypvz/releases)页面中[下载最新版(点击跳转)](https://github.com/wszqkzqk/pypvz/releases/latest)。
## 方法
* 使用鼠标收集阳光,种植植物。
* 你可以通过更改 source/constants.py 中的 START_LEVEL_NUM 的数值来更改起始关卡:
* 1 和 2白昼模式
* 3夜晚模式
* 4传送带模式
* 5坚果保龄球模式
* **注意:目前单文件发布版本不支持自定义调整关卡**
* 使用鼠标收集阳光,种植植物
* 对于已经存在存档的用户,可以在`~\AppData\Roaming\pypvz\userdata.json`Windows`~/.config/pypvz/userdata.json`(其他操作系统)中修改当前关卡:
* 冒险模式:
* 白昼模式——单行草皮1
* 白昼模式——三行草皮2
* 白昼模式3~5
* 夜晚模式6~8
* 泳池模式9~11
* 浓雾模式暂时没有雾12
* 小游戏模式:
* 坚果保龄球1
* 传送带模式白天2
* 传送带模式黑夜3
* 传送带模式泳池4
* 坚果保龄球(II)5
* 目前暂时按照以上设定,未与原版相符
* 可以通过修改存档JSON文件中的`game rate`值来调节游戏速度倍率
## Windows单文件封装
### 使用Nuitka进行构建
编译依赖:
- Python >= 3.7
- Python-Pygame >= 1.9
- Nuitka
- MinGW-w64或其他C编译器
- ccache
- depends
- python-zstandard可选
- `Python3` (建议 >= 3.10,最好使用最新版)
- `Python-Pygame` (建议 >= 2.0,最好使用最新版)
- `Nuitka`
- `MinGW-w64`或其他C编译器
- `ccache`
- `depends`
- `python-zstandard`(可选)
**在编译环境安装不全时Nuitka可以自动安装MinGW-w64、ccache和depends**
在仓库所在文件夹执行:
- 由于目前Nuitka打包尚存bug无法自动封装`pygame`中用来解码音频的相关`.dll`文件,因此需要手动在编译命令中添加
- 对于`mp3`编码,需要添加`libmpg123-0.dll`
- 对于`vorbis`编码,需要添加`libogg-0.dll``libvorbis-0.dll``libvorbisfile-3.dll`
- 对于`opus`编码,需要添加`libogg-0.dll``libopus-0.dll``libopusfile-0.dll`
- 以添加`opus``vorbis`编码的背景音乐支持为例,编译需执行以下命令:
``` shell
nuitka --mingw --standalone --onefile --show-progress --show-memory --windows-disable-console --output-dir=out --windows-icon-from-ico=pypvz.ico --include-data-dir=resources=resources main.py
``` cmd
git clone https://github.com/wszqkzqk/pypvz.git
cd pypvz
nuitka --mingw64 --standalone `
--onefile `
--show-progress `
--show-memory `
--output-dir=release `
--windows-icon-from-ico=pypvz.ico `
--include-data-dir=resources=resources `
--include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libogg-0.dll=libogg-0.dll `
--include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopus-0.dll=libopus-0.dll `
--include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll `
--include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libvorbisfile-3.dll=libvorbisfile-3.dll `
--include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libvorbis-0.dll=libvorbis-0.dll `
--lto=yes `
--windows-disable-console `
--windows-product-name=pypvz `
--windows-company-name=wszqkzqk.dev `
--windows-file-description="pypvz" `
--windows-product-version=0.8.2.0 `
pypvz.py
```
可执行文件生成路径为`./out/main.exe`
* 其中`C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\xxx.dll`应当替换为`xxx.dll`实际所在路径,`--output-dir=`后应当跟实际需要输出的路径,绝对路径或者相对路径均可
* 由于仅复制了`opus``vorbis`的解码器故要求所有背景音乐都要以opus或vorbis编码
* `--windows-product-version=`表示版本号信息,所跟内容格式必须为`x.x.x.x`
* 建议开启`--lto=yes`选项优化链接,如果编译失败可以关闭此选项
可执行文件生成路径为`./release/pypvz.exe`
如果只需要在本地生成编译文件测试,则只需要执行:
``` cmd
nuitka --mingw64 `
--follow-imports `
--show-progress `
--output-dir=test-build `
--windows-icon-from-ico=pypvz.ico `
--windows-product-name=pypvz `
--windows-company-name=wszqkzqk.dev `
--windows-file-description=pypvz `
--windows-disable-console `
--windows-product-version=0.8.2.0 `
pypvz.py
```
这样生成的程序只能在具有相同python环境的机器上运行
### 使用pyinstaller进行构建
- 由于pyinstaller构建的程序运行效率显著较nuitka构建的程序低下并且程序体积也往往比nuitka构建的程序大因此本项目并不推荐使用pyinstaller构建
- 但是因为pyinstaller直接封装了所导入的库中的全部内容使用pyinstaller构建时不需要手动添加媒体解码库
- pyinstaller并没有涉及python源代码优化、C源代码生成以及C源代码编译链接过程因此编译速度显著快于nuitka
编译依赖:
- `Python3` (建议 >= 3.10,最好使用最新版)
- `Python-Pygame` (建议 >= 2.0,最好使用最新版)
- `Pyinstaller`
编译参考命令:
``` cmd
pyinstaller -F pypvz.py `
--distpath ./release `
--noconsole `
--add-data="resources;./resources" `
--add-data="pypvz-exec-logo.png;./pypvz-exec-logo.png" `
-i ./pypvz.ico
```
可执行文件生成路径为`./release/pypvz.exe`
### 使用Github Workflow进行自动构建
直接复制本项目下的`.github/workflows`下的文件,进行少许改动即可满足大多数需求
## 已知bug
以下问题囿于个人目前的能力与精力,没有修复:
* 冷冻的僵尸未用蓝色滤镜标识
* 这个想不到很好的实现方法,可能会想一种替代方案
* 魅惑的僵尸未用红色滤镜标识
* 这个可能会作为一种“特性”
* 南瓜头显示不正常
* 墓碑吞噬者吞噬墓碑过程中被吞噬的墓碑顶端不会消失
**欢迎提供[Pull requests](https://github.com/wszqkzqk/pypvz/pulls)或修复方法建议也欢迎在这里反馈新的bug()**
## ~~画大饼~~计划(不保证实施)
* 增加关卡进程进度条
* 该功能自0.5.4已实现
* 增加保存数据文件以存储用户进度的功能
* 该功能自0.8.0.0已实现
* 增加调整音量的功能
* `pg.mixer.music.set_volume()`
* 可以用`音量+``音量-`按钮实现
* 注意字体颜色渲染
* 该功能自0.8.14.0已实现
* 关卡开始前增加预览界面
* 增加解锁与选关功能
* 目前的设想与原版不同,在完成两轮冒险模式(初始冒险模式 + 戴夫选关的冒险模式)后可以自主选关~~(当然现在只是画饼)~~
* 更改僵尸生成方式
* 使僵尸生成更随机化由JSON记录改为随机数生成
* 该功能自0.5.0已经基本实现
* 使用原版设定每面旗帜出10波僵尸9个小波1个大波
* 采用手机版设定无尽模式没有红眼计数和变速设定每波红眼权重为1000平均分布
* 增加僵尸死亡后有概率掉落奖励的机制
* 增加更多植物、僵尸类型与游戏功能、模式,尽量符合原版基本设计
* 细分伤害种类
* 实体
* 一般子弹实体——普通伤害且无特殊效果
* 豌豆
* 已实现
* 孢子
* 已实现
* 星星
* 已实现
* 尖刺
* 特殊子弹实体——非普通伤害或有特殊效果
* 冰豌豆(减速)
* 已实现
* 火豌豆2倍伤害、带有1x1溅射
* 已实现
* 投掷
* 西瓜4倍伤害带有3x3溅射
* 冰瓜4倍伤害带有3x3溅射伤害与减速
* 玉米粒
* 黄油2倍伤害定格
* 卷心菜2倍伤害
* 烟雾
* 线形范围烟雾
* 自0.7.10.0起已实现
* 圆形范围烟雾
* 碾压
* 倭瓜
* 已实现
* 爆炸
* 一般爆炸
* 樱桃炸弹、爆炸坚果与玉米加农炮炮弹
* 已实现
* 毁灭菇
* 自0.7.6.0已实现
* 火焰爆炸
* 火爆辣椒
* 已实现
* 非灰烬类爆炸
* 土豆雷
* 已实现
* 从地面刺伤
* 已实现
* 缠绕与拖拽
* 自0.7.5.0已实现
* 与原版有所区别,设定上秒杀任意僵尸
* 吞噬
* 已实现
* 与原版有所区别,设定上秒杀任意僵尸
* 特殊
* 魅惑
* 已实现
* 移除铁制防具
* 全场伤害与冰冻
* 已实现
* 撞击
* 坚果保龄球撞击
* 已实现
* 巨型坚果保龄球撞击
* 吹走
* 增加部分音效
* 如爆炸、打击等
* 自0.6.9已部分实现
* 增加关卡前的本关僵尸预览
* 鼠标移动到植物上时显示部分信息,类似图鉴功能
## 截屏
![截屏1](/demo/demo1.webp)
![截屏2](/demo/demo2.webp)
![截屏3](/demo/demo3.webp)
![截屏1](/screenshots/screenshot-1.webp)
![截屏2](/screenshots/screenshot-2.webp)
![截屏3](/screenshots/screenshot-3.webp)
![截屏4](/screenshots/screenshot-4.webp)
![截屏5](/screenshots/screenshot-5.webp)
![截屏6](/screenshots/screenshot-6.webp)
![截屏7](/screenshots/screenshot-7.webp)
![截屏8](/screenshots/screenshot-8.webp)
![截屏9](/screenshots/screenshot-9.webp)
![截屏10](/screenshots/screenshot-10.webp)
![截屏11](/screenshots/screenshot-11.webp)
![截屏12](/screenshots/screenshot-12.webp)
![截屏13](/screenshots/screenshot-13.webp)
![截屏14](/screenshots/screenshot-14.webp)
![截屏15](/screenshots/screenshot-15.webp)
![截屏16](/screenshots/screenshot-16.webp)
![截屏17](/screenshots/screenshot-17.webp)
![截屏18](/screenshots/screenshot-18.webp)
![截屏19](/screenshots/screenshot-19.webp)
![截屏20](/screenshots/screenshot-20.webp)
![截屏21](/screenshots/screenshot-21.webp)
![截屏22](/screenshots/screenshot-22.webp)
![截屏23](/screenshots/screenshot-23.webp)
## 关于日志与反馈
对于闪退情况Linux用户与Windows下的python源代码运行用户可以直接在终端中复制出崩溃日志进行反馈。
Windows单文件封装版本无法通过终端显示日志需要在日志文件中寻找崩溃原因
* Windows默认日志文件路径为`~\AppData\Roaming\pypvz\run.log`
* 其他操作系统为`~/.config/pypvz/run.log`,但一般可以在终端中显示时用终端中的输出即可

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

View File

@ -1,3 +0,0 @@
#!/bin/bash
cd `dirname $0`; pwd
git pull git@github.com:wszqkzqk/pypvz.git

15
main.py
View File

@ -1,15 +0,0 @@
#!/usr/bin/env python
import pygame as pg
from source import tool
from source import constants as c
from source.state import mainmenu, screen, level
if __name__=='__main__':
# 控制状态机运行
game = tool.Control()
state_dict = {c.MAIN_MENU: mainmenu.Menu(),
c.GAME_VICTORY: screen.GameVictoryScreen(),
c.GAME_LOSE: screen.GameLoseScreen(),
c.LEVEL: level.Level()}
game.setup_states(state_dict, c.MAIN_MENU)
game.run()

12
pyproject.toml Normal file
View File

@ -0,0 +1,12 @@
[project]
name = "pypvz"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"blue>=0.9.1",
"pygame>=2.6.1",
"setuptools>=80.9.0",
"wheel>=0.45.1",
]

BIN
pypvz-exec-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
pypvz.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

51
pypvz.py Executable file
View File

@ -0,0 +1,51 @@
#!/usr/bin/env python
import logging
import os
import traceback
from logging.handlers import RotatingFileHandler
import pygame as pg
# 由于在后续本地模块中存在对pygame的调用在此处必须完成pygame的初始化
os.environ[
'SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR'
] = '0' # 设置临时环境变量以避免Linux下禁用x11合成器
pg.init()
from source import constants as c
from source import tool
from source.state import level, mainmenu, screen
if __name__ == '__main__':
# 日志设置
if not os.path.exists(os.path.dirname(c.USERLOG_PATH)):
os.makedirs(os.path.dirname(c.USERLOG_PATH))
logger = logging.getLogger('main')
formatter = logging.Formatter('%(asctime)s - %(levelname)s: %(message)s')
fileHandler = RotatingFileHandler(
c.USERLOG_PATH, 'a', 1_000_000, 0, 'utf-8'
)
# 设置日志文件权限Unix为644Windows为可读写Python的os.chmod与Unix chmod相同但要显式说明8进制
os.chmod(c.USERLOG_PATH, 0o644)
fileHandler.setFormatter(formatter)
streamHandler = logging.StreamHandler()
streamHandler.setFormatter(formatter)
logger.addHandler(fileHandler)
logger.addHandler(streamHandler)
try:
# 控制状态机运行
game = tool.Control()
state_dict = {
c.MAIN_MENU: mainmenu.Menu(),
c.GAME_VICTORY: screen.GameVictoryScreen(),
c.GAME_LOSE: screen.GameLoseScreen(),
c.LEVEL: level.Level(),
c.AWARD_SCREEN: screen.AwardScreen(),
c.HELP_SCREEN: screen.HelpScreen(),
}
game.setup_states(state_dict, c.MAIN_MENU)
game.run()
except:
print() # 将日志输出与上文内容分隔开,增加可读性
logger.error(f'\n{traceback.format_exc()}')

Binary file not shown.

View File

@ -1,90 +0,0 @@
<mxfile host="65bd71144e" modified="2020-11-30T06:16:32.395Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.51.1 Chrome/83.0.4103.122 Electron/9.3.3 Safari/537.36" etag="RC1RIFtEJiW45I55AWKe" version="13.6.5" pages="2">
<diagram id="FslXHE_8ykSBRjm2p2tr" name="第 1 页">
<mxGraphModel dx="724" dy="461" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="3300" pageHeight="4681" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="2" value="mainmenu" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="210" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="3" value="level" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="420" y="150" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="4" value="game over" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="680" y="210" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="5" value="little games" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="420" y="270" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="6" value="" style="shape=flexArrow;endArrow=classic;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="2" target="3" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="580" y="360" as="sourcePoint"/>
<mxPoint x="630" y="310" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="7" value="" style="shape=flexArrow;endArrow=classic;html=1;exitX=1.025;exitY=0.867;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="2" target="5" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="290" y="340" as="sourcePoint"/>
<mxPoint x="340" y="290" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="9" value="" style="shape=flexArrow;endArrow=classic;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="3" target="4" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="580" y="200" as="sourcePoint"/>
<mxPoint x="630" y="150" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="10" value="" style="shape=flexArrow;endArrow=classic;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="5" target="4" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="630" y="330" as="sourcePoint"/>
<mxPoint x="680" y="280" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="11" value="" style="shape=flexArrow;endArrow=classic;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="4" target="2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="720" y="150" as="sourcePoint"/>
<mxPoint x="260" y="50" as="targetPoint"/>
<Array as="points">
<mxPoint x="530" y="70"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-11" value="control" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="390" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-12" value="" style="shape=flexArrow;endArrow=classic;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="1ls8mGlj3wdy2eXAvnXn-11" target="2">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="180" y="370" as="sourcePoint"/>
<mxPoint x="230" y="320" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-13" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="80" y="470" as="sourcePoint"/>
<mxPoint x="815.3333740234375" y="470" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-14" value="" style="shape=flexArrow;endArrow=classic;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" target="1ls8mGlj3wdy2eXAvnXn-11">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="200" y="560" as="sourcePoint"/>
<mxPoint x="200" y="500" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-15" value="Actor" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;" vertex="1" parent="1">
<mxGeometry x="260" y="550" width="30" height="60" as="geometry"/>
</mxCell>
<mxCell id="1ls8mGlj3wdy2eXAvnXn-16" value="input" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="220" y="510" width="40" height="20" as="geometry"/>
</mxCell>
</root>
</mxGraphModel>
</diagram>
<diagram id="CydbNID2VFdMlwzW122j" name="Page-2">
<mxGraphModel dx="724" dy="461" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="-akz3d4JWGbzF8o_4E1M-0"/>
<mxCell id="-akz3d4JWGbzF8o_4E1M-1" parent="-akz3d4JWGbzF8o_4E1M-0"/>
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@ -1,14 +0,0 @@
{
"plant_image_rect":{
"PeaNormal":{"x":28, "y":0, "width":28, "height":34},
"PeaIce":{"x":26, "y":0, "width":30, "height":34},
"Chomper":{"x":0, "y":0, "width":100, "height":114},
"PuffShroom":{"x":0, "y":28, "width":35, "height":38},
"PuffShroomSleep":{"x":1, "y":0, "width":39, "height":65},
"BulletMushRoom":{"x":0, "y":1, "width":55, "height":21},
"PotatoMine":{"x":0, "y":0, "width":75, "height":55},
"Squash":{"x":10, "y":140, "width":80, "height":86},
"SquashAim":{"x":10, "y":140, "width":80, "height":86},
"Spikeweed":{"x":3, "y":0, "width":80, "height":35}
}
}

View File

@ -1,25 +0,0 @@
{
"zombie_image_rect":{
"Zombie":{"x":62, "width":90},
"ZombieAttack":{"x":62, "width":90},
"ZombieLostHead":{"x":62, "width":90},
"ZombieLostHeadAttack":{"x":62, "width":90},
"ZombieDie":{"x":0, "width":164},
"BoomDie":{"x":68, "width":80},
"ConeheadZombie":{"x":80, "width":80},
"ConeheadZombieAttack":{"x":79, "width":87},
"BucketheadZombie":{"x":54, "width":90},
"BucketheadZombieAttack":{"x":46, "width":90},
"FlagZombie":{"x":56, "width":110},
"FlagZombieAttack":{"x":60, "width":100},
"FlagZombieLostHead":{"x":55, "width":110},
"FlagZombieLostHeadAttack":{"x":55, "width":110},
"NewspaperZombie":{"x":48, "width":92},
"NewspaperZombieAttack":{"x":48, "width":92},
"NewspaperZombieNoPaper":{"x":40, "width":98},
"NewspaperZombieNoPaperAttack":{"x":48, "width":92},
"NewspaperZombieLostHead":{"x":44, "width":96},
"NewspaperZombieLostHeadAttack":{"x":48, "width":92},
"NewspaperZombieDie":{"x":0, "width":100}
}
}

View File

@ -1,8 +0,0 @@
{
"background_type":0,
"init_sun_value":500,
"shovel":1,
"zombie_list":[
{"time":1000, "map_y":2, "name":"Zombie"}
]
}

View File

@ -1,20 +0,0 @@
{
"background_type": 0,
"init_sun_value": 50,
"shovel": 1,
"zombie_list": [
{ "time": 20000, "map_y": 0, "name": "Zombie" },
{ "time": 40000, "map_y": 2, "name": "FlagZombie" },
{ "time": 50000, "map_y": 4, "name": "Zombie" },
{ "time": 70000, "map_y": 3, "name": "Zombie" },
{ "time": 72000, "map_y": 1, "name": "FlagZombie" },
{ "time": 74000, "map_y": 2, "name": "Zombie" },
{ "time": 90000, "map_y": 0, "name": "Zombie" },
{ "time": 91000, "map_y": 1, "name": "FlagZombie" },
{ "time": 92000, "map_y": 2, "name": "Zombie" },
{ "time": 93000, "map_y": 3, "name": "FlagZombie" },
{ "time": 94000, "map_y": 0, "name": "Zombie" },
{ "time": 95000, "map_y": 4, "name": "FlagZombie" },
{ "time": 96000, "map_y": 1, "name": "Zombie" }
]
}

View File

@ -1,20 +0,0 @@
{
"background_type":0,
"init_sun_value":50,
"shovel":1,
"zombie_list":[
{"time":20000, "map_y":0, "name":"Zombie"},
{"time":40000, "map_y":2, "name":"FlagZombie"},
{"time":50000, "map_y":4, "name":"ConeheadZombie"},
{"time":70000, "map_y":3, "name":"ConeheadZombie"},
{"time":72000, "map_y":1, "name":"FlagZombie"},
{"time":74000, "map_y":2, "name":"ConeheadZombie"},
{"time":90000, "map_y":0, "name":"FlagZombie"},
{"time":91000, "map_y":1, "name":"ConeheadZombie"},
{"time":92000, "map_y":2, "name":"Zombie"},
{"time":93000, "map_y":3, "name":"ConeheadZombie"},
{"time":94000, "map_y":0, "name":"Zombie"},
{"time":95000, "map_y":4, "name":"FlagZombie"},
{"time":96000, "map_y":1, "name":"ConeheadZombie"}
]
}

View File

@ -1,21 +0,0 @@
{
"background_type":1,
"init_sun_value":50,
"shovel":1,
"zombie_list":[
{"time":20000, "map_y":0, "name":"Zombie"},
{"time":40000, "map_y":2, "name":"ConeheadZombie"},
{"time":50000, "map_y":4, "name":"BucketheadZombie"},
{"time":70000, "map_y":3, "name":"BucketheadZombie"},
{"time":72000, "map_y":1, "name":"FlagZombie"},
{"time":74000, "map_y":2, "name":"ConeheadZombie"},
{"time":90000, "map_y":0, "name":"BucketheadZombie"},
{"time":91000, "map_y":1, "name":"ConeheadZombie"},
{"time":92000, "map_y":2, "name":"Zombie"},
{"time":93000, "map_y":3, "name":"BucketheadZombie"},
{"time":94000, "map_y":0, "name":"Zombie"},
{"time":95000, "map_y":4, "name":"FlagZombie"},
{"time":96000, "map_y":1, "name":"BucketheadZombie"},
{"time":97000, "map_y":1, "name":"FlagZombie"}
]
}

View File

@ -1,42 +0,0 @@
{
"background_type":0,
"choosebar_type":1,
"shovel":1,
"card_pool":[
{"name":"Peashooter"},
{"name":"SnowPea"},
{"name":"WallNut"},
{"name":"CherryBomb"},
{"name":"RepeaterPea"},
{"name":"Chomper"},
{"name":"PotatoMine"}
],
"zombie_list":[
{"time": 1000, "map_y":1, "name":"Zombie"},
{"time": 6000, "map_y":3, "name":"FlagZombie"},
{"time":10000, "map_y":0, "name":"ConeheadZombie"},
{"time":14000, "map_y":2, "name":"NewspaperZombie"},
{"time":18000, "map_y":4, "name":"BucketheadZombie"},
{"time":22000, "map_y":0, "name":"Zombie"},
{"time":26000, "map_y":3, "name":"BucketheadZombie"},
{"time":30000, "map_y":4, "name":"Zombie"},
{"time":32000, "map_y":3, "name":"NewspaperZombie"},
{"time":34000, "map_y":1, "name":"FlagZombie"},
{"time":36000, "map_y":2, "name":"ConeheadZombie"},
{"time":38000, "map_y":0, "name":"BucketheadZombie"},
{"time":40000, "map_y":1, "name":"ConeheadZombie"},
{"time":42000, "map_y":1, "name":"NewspaperZombie"},
{"time":60000, "map_y":4, "name":"Zombie"},
{"time":61000, "map_y":3, "name":"NewspaperZombie"},
{"time":62000, "map_y":1, "name":"FlagZombie"},
{"time":63000, "map_y":2, "name":"Zombie"},
{"time":64000, "map_y":0, "name":"BucketheadZombie"},
{"time":65000, "map_y":1, "name":"ConeheadZombie"},
{"time":66000, "map_y":2, "name":"Zombie"},
{"time":67000, "map_y":4, "name":"BucketheadZombie"},
{"time":68000, "map_y":3, "name":"NewspaperZombie"},
{"time":69000, "map_y":1, "name":"FlagZombie"},
{"time":70000, "map_y":4, "name":"BucketheadZombie"},
{"time":71000, "map_y":0, "name":"FlagZombie"}
]
}

View File

@ -1,34 +0,0 @@
{
"background_type":4,
"choosebar_type":2,
"shovel":0,
"card_pool":[
{"name":"WallNutBowling"},
{"name":"RedWallNutBowling"}
],
"zombie_list":[
{"time": 1000, "map_y":1, "name":"Zombie"},
{"time":10000, "map_y":3, "name":"FlagZombie"},
{"time":12000, "map_y":0, "name":"ConeheadZombie"},
{"time":14000, "map_y":2, "name":"NewspaperZombie"},
{"time":18000, "map_y":4, "name":"BucketheadZombie"},
{"time":22000, "map_y":3, "name":"Zombie"},
{"time":26000, "map_y":1, "name":"BucketheadZombie"},
{"time":30000, "map_y":4, "name":"Zombie"},
{"time":32000, "map_y":3, "name":"NewspaperZombie"},
{"time":34000, "map_y":1, "name":"FlagZombie"},
{"time":36000, "map_y":2, "name":"ConeheadZombie"},
{"time":40000, "map_y":1, "name":"ConeheadZombie"},
{"time":42000, "map_y":1, "name":"NewspaperZombie"},
{"time":50000, "map_y":4, "name":"Zombie"},
{"time":54000, "map_y":3, "name":"NewspaperZombie"},
{"time":58000, "map_y":1, "name":"FlagZombie"},
{"time":62000, "map_y":2, "name":"Zombie"},
{"time":64000, "map_y":1, "name":"ConeheadZombie"},
{"time":66000, "map_y":2, "name":"Zombie"},
{"time":68000, "map_y":3, "name":"NewspaperZombie"},
{"time":70000, "map_y":1, "name":"FlagZombie"},
{"time":72000, "map_y":4, "name":"BucketheadZombie"},
{"time":74000, "map_y":0, "name":"FlagZombie"}
]
}

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 756 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1007 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 968 B

After

Width:  |  Height:  |  Size: 987 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1010 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 991 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 810 B

Some files were not shown because too many files have changed in this diff Show More