AMXXPawn编译器指令#file

#file指令使用方法:

#file 字符串字面量

#file指令用于设置警告和报错时显示的当前脚本文件地址。

从该指令所在行开始,若有导致编译时警告或报错的代码,在展示报错文件名称时,显示该指令设定的文件地址。

若是运行时报错,则仅显示文件名,不显示完整地址。

示例:

#include <amxmodx> #file "C:\BAD!!!Baka!!!.sma" public plugin_init() { new vel[3]; velocity_by_aim(1, 100, vel); }

在编译这段源码时,将会显示这样的警告:

C:\BAD!!!Baka!!!.sma(6) : warning 213: tag mismatch

运行时将会显示这样的报错:

L 09/21/2025 - 05:21:37: Invalid player 1 (not ingame) L 09/21/2025 - 05:21:37: [AMXX] Displaying debug trace (plugin "test.amxx") L 09/21/2025 - 05:21:37: [AMXX] Run time error 10: native error (native "velocity_by_aim") L 09/21/2025 - 05:21:37: [AMXX] [0] BAD!!!Baka!!!.sma::plugin_init (line 6)

注意,该指令仅伪造当前脚本文件地址。

如果是当前脚本引用的其它脚本触发警告或报错,会显示正确的文件地址。