AvZ1 安装与使用教程
0 前言
随着 AvZ2 的发布,AvZ1 的支持被放弃了。本文将讲解 AvZ1 的安装及其与 AvZ2 共存的方法,旨在减少新人面对混乱的版本问题时的困惑。

1 AvZ1 与 AvZ2 的区别
AvZ1 是 AvZ 的传统版本,已相当成熟,并且有很多社区资源。bug很少,但目前已停止官方维护。
AvZ2 在 AvZ1 的基础上更改了语法,以简洁性为代价一定程度上降低了理解成本,但是刚刚起步,资源较少。
两个版本都很适合使用,新人可以自由选择。

2 安装 VS Code
这一部分 AvZ1 与 AvZ2 是相同的。


3 配置工作环境
AvZ 环境安装包下载链接:https://gitee.com/alumkal/AvZ1-archive/releases/download/yet-another-final/AvZ1.exe
将其安装至一个空文件夹,并打开 VS Code,左上角 文件→打开文件夹,点进你的安装文件夹(里面有 bin/ inc/ 那个)并选中。
点开 VS Code 左侧栏的“资源管理器”,打开 scripts/,这里是存储脚本的地方。
环境包中提供了示例脚本 PEJingDian12.cpp,打开并按下 Ctrl+Shift+B 即可编译运行。在键盘快捷方式设置里搜索“运行生成任务”可以修改这个快捷键。
不需要,也不要以任何方式更新 AvZ1,这会将 AvZ 库更新到 AvZ2,导致不兼容!

4 AvZ1 教程
渐强站备份:https://crescb.com/avz/index.html
附 InsertOperation 解析:cv20023262 BV1uG411G7bi
请注意,gitee 和 GitHub 上的教程是 AvZ2 教程。

5 可选:AvZ1 与 AvZ2 共存
我提供的 AvZ1 环境包编译方法和 AvZ2 不同(AvZ1 用 Ctrl+Shift+B,AvZ2 用 AvZ: Run Script),完全不会冲突。只需在 VS Code 中切换文件夹即可。
如果你已经有了 AvZ1 环境,按如下方法配置:
打开 AvZ1,在 VS Code 资源管理器栏中选中 .vscode/settings.json,加入:
"avzConfigure.avzCompilerCmd": "-g \"__FILE_NAME__\" -std=c++1z -I \"__AVZ_DIR__\\inc\" -lavz -lgdi32 -L \"__AVZ_DIR__\\bin\" -shared -o \"bin\\libavz.dll\"",
"avzConfigure.avzDir": "D:/你/的/AvZ1/路径",
打开 AvZ2,在 VS Code 资源管理器栏中选中 .vscode/settings.json,加入:
"avzConfigure.avzCompilerCmd": "-g -m32 -std=c++20 -Wall -static \"__FILE_NAME__\" -I \"__AVZ_DIR__/inc\" -lavz -lgdi32 -L \"__AVZ_DIR__/bin\" -shared -o \"bin/libavz.dll\"",
"avzConfigure.avzDir": "D:/你/的/AvZ2/路径",
这相当于用工作区设置覆盖全局设置,以达成共存。在 VS Code 左上角 文件→打开最近的文件 处即可切换 AvZ1 与 AvZ2。
如果你的脚本文件夹与 AvZ 文件夹不同,则需打开脚本文件夹,修改其中的settings.json,avzConfigure.avzDir 填入 AvZ 文件夹。

6 常见错误
error: unrecognized command line option '-std=c++20'
原因:AvZ1 环境与 AvZ2 编译命令冲突
解决方案:
a. 若你想使用 AvZ2:去 https://gitee.com/vector-wlc/AsmVsZombies/releases/tag/v2.0.0 下载新环境包
b. 若你想使用 AvZ1:见第 5 节,或者用我的环境包
如果有其他错误,欢迎在评论区补充